<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
  <head>
    <title>Logback Log Messages</title>
<style  type="text/css">
table { margin-left: 2em; margin-right: 2em; border-left: 2px solid #AAA; }
TR.even { background: #FFFFFF; }
TR.odd { background: #EAEAEA; }
TR.warn TD.Level, TR.error TD.Level, TR.fatal TD.Level {font-weight: bold; color: #FF4040 }
TD { padding-right: 1ex; padding-left: 1ex; border-right: 2px solid #AAA; }
TD.Time, TD.Date { text-align: right; font-family: courier, monospace; font-size: smaller; }
TD.Thread { text-align: left; }
TD.Level { text-align: right; }
TD.Logger { text-align: left; }
TR.header { background: #596ED5; color: #FFF; font-weight: bold; font-size: larger; }
TD.Exception { background: #A2AEE8; font-family: courier, monospace;}
</style>

  </head>
<body>
<hr/>
<p>Log session start time Thu Aug 14 22:13:22 CST 2025</p><p></p>

<table cellspacing="0">
<tr class="header">
<td class="Level">Level</td>
<td class="Date">Date</td>
<td class="Message">Message</td>
<td class="MethodOfCaller">MethodOfCaller</td>
<td class="FileOfCaller">FileOfCaller</td>
<td class="LineOfCaller">LineOfCaller</td>
</tr>


<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:22,103</td>
<td class="Message">HV000001: Hibernate Validator 6.2.5.Final</td>
<td class="MethodOfCaller">&lt;clinit&gt;</td>
<td class="FileOfCaller">Version.java</td>
<td class="LineOfCaller">21</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:22,111</td>
<td class="Message">Starting JeecgSystemApplication using Java 17.0.15 on 192.168.1.112 with PID 21347 (/Users/mac/Desktop/project/jeecg/jeecg-boot/jeecg-module-system/jeecg-system-start/target/classes started by mac in /Users/mac/Desktop/project/jeecg/jeecg-boot)</td>
<td class="MethodOfCaller">logStarting</td>
<td class="FileOfCaller">StartupInfoLogger.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:22,112</td>
<td class="Message">The following 1 profile is active: &quot;dev&quot;</td>
<td class="MethodOfCaller">logStartupProfileInfo</td>
<td class="FileOfCaller">SpringApplication.java</td>
<td class="LineOfCaller">638</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:23,544</td>
<td class="Message">Multiple Spring Data modules found, entering strict repository configuration mode</td>
<td class="MethodOfCaller">multipleStoresDetected</td>
<td class="FileOfCaller">RepositoryConfigurationDelegate.java</td>
<td class="LineOfCaller">262</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:23,546</td>
<td class="Message">Bootstrapping Spring Data Redis repositories in DEFAULT mode.</td>
<td class="MethodOfCaller">registerRepositoriesIn</td>
<td class="FileOfCaller">RepositoryConfigurationDelegate.java</td>
<td class="LineOfCaller">132</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:23,615</td>
<td class="Message">Finished Spring Data repository scanning in 59 ms. Found 0 Redis repository interfaces.</td>
<td class="MethodOfCaller">registerRepositoriesIn</td>
<td class="FileOfCaller">RepositoryConfigurationDelegate.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:23,702</td>
<td class="Message"> ******************* init miniDao config [ begin ] *********************** </td>
<td class="MethodOfCaller">miniDaoBeanScannerConfigurer</td>
<td class="FileOfCaller">MinidaoAutoConfiguration.java</td>
<td class="LineOfCaller">23</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:23,703</td>
<td class="Message"> ------ minidao.base-package ------- org.jeecg.modules.jmreport.*,org.jeecg.modules.drag.*</td>
<td class="MethodOfCaller">miniDaoBeanScannerConfigurer</td>
<td class="FileOfCaller">MinidaoAutoConfiguration.java</td>
<td class="LineOfCaller">25</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:23,703</td>
<td class="Message"> *******************  init miniDao config  [ end ] *********************** </td>
<td class="MethodOfCaller">miniDaoBeanScannerConfigurer</td>
<td class="FileOfCaller">MinidaoAutoConfiguration.java</td>
<td class="LineOfCaller">42</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,063</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportCategoryDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,064</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,064</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDataSourceDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,064</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDbDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,064</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDbFieldDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDbParamDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDictDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDictItemDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportExportJobDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportExportLogDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportLinkDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportMapDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportShareDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.JimuDragCategoryDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.JimuDragMapDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,065</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.JimuReportIconLibDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,066</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragCompDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,066</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDatasetHeadDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,066</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDatasetItemDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,066</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDatasetParamDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,066</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDataSourceDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,066</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragPageCompDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,066</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragPageDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,066</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragShareDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,069</td>
<td class="Message">Cannot enhance @Configuration bean definition &#39;com.yomahub.liteflow.springboot.config.LiteflowMainAutoConfiguration&#39; since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as &#39;static&#39;.</td>
<td class="MethodOfCaller">enhanceConfigurationClasses</td>
<td class="FileOfCaller">ConfigurationClassPostProcessor.java</td>
<td class="LineOfCaller">426</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,285</td>
<td class="Message">Bean &#39;spring.redis-org.springframework.boot.autoconfigure.data.redis.RedisProperties&#39; of type [org.springframework.boot.autoconfigure.data.redis.RedisProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,289</td>
<td class="Message">Bean &#39;org.springframework.boot.autoconfigure.data.redis.LettuceConnectionConfiguration&#39; of type [org.springframework.boot.autoconfigure.data.redis.LettuceConnectionConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,301</td>
<td class="Message">Bean &#39;org.springframework.boot.actuate.autoconfigure.metrics.redis.LettuceMetricsAutoConfiguration&#39; of type [org.springframework.boot.actuate.autoconfigure.metrics.redis.LettuceMetricsAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,305</td>
<td class="Message">Bean &#39;org.springframework.boot.actuate.autoconfigure.metrics.export.prometheus.PrometheusMetricsExportAutoConfiguration&#39; of type [org.springframework.boot.actuate.autoconfigure.metrics.export.prometheus.PrometheusMetricsExportAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,311</td>
<td class="Message">Bean &#39;management.metrics.export.prometheus-org.springframework.boot.actuate.autoconfigure.metrics.export.prometheus.PrometheusProperties&#39; of type [org.springframework.boot.actuate.autoconfigure.metrics.export.prometheus.PrometheusProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,312</td>
<td class="Message">Bean &#39;prometheusConfig&#39; of type [org.springframework.boot.actuate.autoconfigure.metrics.export.prometheus.PrometheusPropertiesConfigAdapter] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,315</td>
<td class="Message">Bean &#39;collectorRegistry&#39; of type [io.prometheus.client.CollectorRegistry] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,317</td>
<td class="Message">Bean &#39;org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration&#39; of type [org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,319</td>
<td class="Message">Bean &#39;micrometerClock&#39; of type [io.micrometer.core.instrument.Clock$1] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,329</td>
<td class="Message">Bean &#39;prometheusMeterRegistry&#39; of type [io.micrometer.prometheus.PrometheusMeterRegistry] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,332</td>
<td class="Message">Bean &#39;micrometerOptions&#39; of type [io.lettuce.core.metrics.MicrometerOptions] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,333</td>
<td class="Message">Bean &#39;lettuceMetrics&#39; of type [org.springframework.boot.actuate.autoconfigure.metrics.redis.LettuceMetricsAutoConfiguration$$Lambda$663/0x000000040170a5a8] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,429</td>
<td class="Message">Bean &#39;lettuceClientResources&#39; of type [io.lettuce.core.resource.DefaultClientResources] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,491</td>
<td class="Message">Bean &#39;redisConnectionFactory&#39; of type [org.springframework.data.redis.connection.lettuce.LettuceConnectionFactory] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,495</td>
<td class="Message">Bean &#39;jeecgBaseConfig&#39; of type [org.jeecg.config.JeecgBaseConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,501</td>
<td class="Message">Bean &#39;shiroConfig&#39; of type [org.jeecg.config.shiro.ShiroConfig$$EnhancerBySpringCGLIB$$2ccbddf2] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,713</td>
<td class="Message">Bean &#39;spring.datasource.dynamic-com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties&#39; of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,720</td>
<td class="Message">Bean &#39;com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAopConfiguration&#39; of type [com.baomidou.dynamic.datasource.spring.boot.autoconfigure.DynamicDataSourceAopConfiguration$$EnhancerBySpringCGLIB$$4f014d4d] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,730</td>
<td class="Message">Bean &#39;dsProcessor&#39; of type [com.baomidou.dynamic.datasource.processor.DsHeaderProcessor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,760</td>
<td class="Message">Bean &#39;shiroRealm&#39; of type [org.jeecg.config.shiro.ShiroRealm] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,813</td>
<td class="Message">===============(1)创建缓存管理器RedisCacheManager</td>
<td class="MethodOfCaller">redisCacheManager</td>
<td class="FileOfCaller">ShiroConfig.java</td>
<td class="LineOfCaller">295</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,814</td>
<td class="Message">===============(2)创建RedisManager,连接Redis..</td>
<td class="MethodOfCaller">redisManager</td>
<td class="FileOfCaller">ShiroConfig.java</td>
<td class="LineOfCaller">316</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,817</td>
<td class="Message">Bean &#39;redisManager&#39; of type [org.crazycake.shiro.RedisManager] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,826</td>
<td class="Message">Bean &#39;securityManager&#39; of type [org.apache.shiro.web.mgt.DefaultWebSecurityManager] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,847</td>
<td class="Message">Bean &#39;authorizationAttributeSourceAdvisor&#39; of type [org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,862</td>
<td class="Message">Bean &#39;com.yomahub.liteflow.springboot.config.LiteflowPropertyAutoConfiguration&#39; of type [com.yomahub.liteflow.springboot.config.LiteflowPropertyAutoConfiguration$$EnhancerBySpringCGLIB$$94016e75] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,876</td>
<td class="Message">Bean &#39;liteflow-com.yomahub.liteflow.springboot.LiteflowProperty&#39; of type [com.yomahub.liteflow.springboot.LiteflowProperty] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,882</td>
<td class="Message">Bean &#39;liteflow.monitor-com.yomahub.liteflow.springboot.LiteflowMonitorProperty&#39; of type [com.yomahub.liteflow.springboot.LiteflowMonitorProperty] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,887</td>
<td class="Message">Bean &#39;liteflowConfig&#39; of type [com.yomahub.liteflow.property.LiteflowConfig] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,892</td>
<td class="Message">Bean &#39;com.yomahub.liteflow.spi.spring.SpringAware&#39; of type [com.yomahub.liteflow.spi.spring.SpringAware] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,900</td>
<td class="Message">Bean &#39;org.apache.shiro.spring.boot.autoconfigure.ShiroBeanAutoConfiguration&#39; of type [org.apache.shiro.spring.boot.autoconfigure.ShiroBeanAutoConfiguration$$EnhancerBySpringCGLIB$$e0a873a9] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:24,904</td>
<td class="Message">Bean &#39;eventBus&#39; of type [org.apache.shiro.event.support.DefaultEventBus] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">PostProcessorRegistrationDelegate.java</td>
<td class="LineOfCaller">376</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,137</td>
<td class="Message">Initializing Spring embedded WebApplicationContext</td>
<td class="MethodOfCaller">log</td>
<td class="FileOfCaller">ServletContextImpl.java</td>
<td class="LineOfCaller">389</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,137</td>
<td class="Message">Root WebApplicationContext: initialization completed in 2884 ms</td>
<td class="MethodOfCaller">prepareWebApplicationContext</td>
<td class="FileOfCaller">ServletWebServerApplicationContext.java</td>
<td class="LineOfCaller">292</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,634</td>
<td class="Message">{dataSource-1,master} inited</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DruidDataSource.java</td>
<td class="LineOfCaller">673</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,635</td>
<td class="Message">dynamic-datasource - add a datasource named [master] success</td>
<td class="MethodOfCaller">addDataSource</td>
<td class="FileOfCaller">DynamicRoutingDataSource.java</td>
<td class="LineOfCaller">154</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,636</td>
<td class="Message">dynamic-datasource initial loaded [1] datasource,primary datasource named [master]</td>
<td class="MethodOfCaller">afterPropertiesSet</td>
<td class="FileOfCaller">DynamicRoutingDataSource.java</td>
<td class="LineOfCaller">237</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,661</td>
<td class="Message">Scanning for classpath resources at &#39;classpath:db/callback&#39; ...</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,662</td>
<td class="Message">Determining location urls for classpath:db/callback using ClassLoader jdk.internal.loader.ClassLoaders$AppClassLoader@1dbd16a6 ...</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,662</td>
<td class="Message">Unable to resolve location classpath:db/callback.</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,662</td>
<td class="Message">AWS SDK available: false</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,662</td>
<td class="Message">Google Cloud Storage available: false</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,662</td>
<td class="Message">Scanning for classpath resources at &#39;classpath:flyway/sql/mysql&#39; ...</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,662</td>
<td class="Message">Determining location urls for classpath:flyway/sql/mysql using ClassLoader jdk.internal.loader.ClassLoaders$AppClassLoader@1dbd16a6 ...</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,662</td>
<td class="Message">Scanning URL: file:/Users/mac/Desktop/project/jeecg/jeecg-boot/jeecg-module-system/jeecg-system-start/target/classes/flyway/sql/mysql</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,662</td>
<td class="Message">JBoss VFS v2 available: false</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,663</td>
<td class="Message">Scanning starting at classpath root in filesystem: /Users/mac/Desktop/project/jeecg/jeecg-boot/jeecg-module-system/jeecg-system-start/target/classes/</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,663</td>
<td class="Message">Scanning for resources in path: /Users/mac/Desktop/project/jeecg/jeecg-boot/jeecg-module-system/jeecg-system-start/target/classes/flyway/sql/mysql (flyway/sql/mysql)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,663</td>
<td class="Message">Scanning for resources in path: /Users/mac/Desktop/project/jeecg/jeecg-boot/jeecg-module-system/jeecg-system-start/target/classes/flyway/sql/mysql/backup (flyway/sql/mysql)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,664</td>
<td class="Message">Found resource: flyway/sql/mysql/README.md</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,664</td>
<td class="Message">Found resource: flyway/sql/mysql/V3.8.0_0__clear_flyway_sql.md</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,664</td>
<td class="Message">Found resource: flyway/sql/mysql/V3.8.0_1__airag_add_menu.sql</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,664</td>
<td class="Message">Found resource: flyway/sql/mysql/V3.8.0_2__airag_init_db.sql</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,665</td>
<td class="Message">Found resource: flyway/sql/mysql/V3.8.1_1__all_upgrade.sql</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,665</td>
<td class="Message">Found resource: flyway/sql/mysql/V3.8.1_2__openapi.sql</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,665</td>
<td class="Message">Found resource: flyway/sql/mysql/V3.8.2_1__all_upgrade.sql</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,665</td>
<td class="Message">Found resource: flyway/sql/mysql/backup/V20250403.zip</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,665</td>
<td class="Message">Scanning for classes at classpath:flyway/sql/mysql</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,810</td>
<td class="Message">Flyway Community Edition 7.15.0 by Redgate</td>
<td class="MethodOfCaller">info</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,811</td>
<td class="Message">Database: jdbc:mysql://127.0.0.1:3306/jeecg-boot (MySQL 8.2)</td>
<td class="MethodOfCaller">info</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,811</td>
<td class="Message">Driver  : MySQL Connector/J mysql-connector-java-8.0.27 (Revision: e920b979015ae7117d60d72bcc8f077a839cd791)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,853</td>
<td class="Message">DDL Transactions Supported: false</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,854</td>
<td class="Message">Schemas: </td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,855</td>
<td class="Message">Default schema: null</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="warn even">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 22:13:25,869</td>
<td class="Message">Flyway upgrade recommended: MySQL 8.2 is newer than this version of Flyway and support has not been tested. The latest supported version of MySQL is 8.0.</td>
<td class="MethodOfCaller">warn</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">48</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,872</td>
<td class="Message">Scanning for SQL callbacks ...</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,872</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/README.md (filename: README.md)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,872</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/V3.8.0_0__clear_flyway_sql.md (filename: V3.8.0_0__clear_flyway_sql.md)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,872</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/backup/V20250403.zip (filename: V20250403.zip)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,880</td>
<td class="Message">Validating migrations ...</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,884</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/README.md (filename: README.md)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,884</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/V3.8.0_0__clear_flyway_sql.md (filename: V3.8.0_0__clear_flyway_sql.md)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,884</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/backup/V20250403.zip (filename: V20250403.zip)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,900</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/README.md (filename: README.md)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,901</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/V3.8.0_1__airag_add_menu.sql (filename: V3.8.0_1__airag_add_menu.sql)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,901</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/V3.8.2_1__all_upgrade.sql (filename: V3.8.2_1__all_upgrade.sql)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,901</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/V3.8.0_0__clear_flyway_sql.md (filename: V3.8.0_0__clear_flyway_sql.md)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,901</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/V3.8.0_2__airag_init_db.sql (filename: V3.8.0_2__airag_init_db.sql)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,901</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/backup/V20250403.zip (filename: V20250403.zip)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug odd">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,901</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/V3.8.1_2__openapi.sql (filename: V3.8.1_2__openapi.sql)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,901</td>
<td class="Message">Filtering out resource: flyway/sql/mysql/V3.8.1_1__all_upgrade.sql (filename: V3.8.1_1__all_upgrade.sql)</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,923</td>
<td class="Message">Successfully validated 6 migrations (execution time 00:00.041s)</td>
<td class="MethodOfCaller">info</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,940</td>
<td class="Message">Current version of schema `jeecg-boot`: 3.8.2.1</td>
<td class="MethodOfCaller">info</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,941</td>
<td class="Message">Schema `jeecg-boot` is up to date. No migration necessary.</td>
<td class="MethodOfCaller">info</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="debug even">
<td class="Level">DEBUG</td>
<td class="Date">2025-08-14 22:13:25,945</td>
<td class="Message">Memory usage: 153 of 258M</td>
<td class="MethodOfCaller">debug</td>
<td class="FileOfCaller">Slf4jLog.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,945</td>
<td class="Message">【数据库升级】平台集成了MySQL库的Flyway，数据库版本自动升级! </td>
<td class="MethodOfCaller">lambda$0</td>
<td class="FileOfCaller">FlywayConfig.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:25,988</td>
<td class="Message">当前数据库类型: MYSQL</td>
<td class="MethodOfCaller">mybatisPlusInterceptor</td>
<td class="FileOfCaller">MybatisPlusSaasConfig.java</td>
<td class="LineOfCaller">140</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:26,995</td>
<td class="Message"> --- redis config init --- </td>
<td class="MethodOfCaller">redisTemplate</td>
<td class="FileOfCaller">RedisConfig.java</td>
<td class="LineOfCaller">60</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:28,206</td>
<td class="Message">Using default implementation for ThreadExecutor</td>
<td class="MethodOfCaller">instantiate</td>
<td class="FileOfCaller">StdSchedulerFactory.java</td>
<td class="LineOfCaller">1220</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:28,207</td>
<td class="Message">Job execution threads will use class loader of thread: main</td>
<td class="MethodOfCaller">initialize</td>
<td class="FileOfCaller">SimpleThreadPool.java</td>
<td class="LineOfCaller">268</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:28,214</td>
<td class="Message">Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl</td>
<td class="MethodOfCaller">&lt;init&gt;</td>
<td class="FileOfCaller">SchedulerSignalerImpl.java</td>
<td class="LineOfCaller">61</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:28,214</td>
<td class="Message">Quartz Scheduler v.2.3.2 created.</td>
<td class="MethodOfCaller">&lt;init&gt;</td>
<td class="FileOfCaller">QuartzScheduler.java</td>
<td class="LineOfCaller">229</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:28,216</td>
<td class="Message">Using db table-based data access locking (synchronization).</td>
<td class="MethodOfCaller">initialize</td>
<td class="FileOfCaller">JobStoreSupport.java</td>
<td class="LineOfCaller">672</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:28,217</td>
<td class="Message">JobStoreCMT initialized.</td>
<td class="MethodOfCaller">initialize</td>
<td class="FileOfCaller">JobStoreCMT.java</td>
<td class="LineOfCaller">145</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:28,217</td>
<td class="Message">Scheduler meta-data: Quartz Scheduler (v2.3.2) &#39;MyScheduler&#39; with instanceId &#39;192.168.1.1121755180808207&#39;
  Scheduler class: &#39;org.quartz.core.QuartzScheduler&#39; - running locally.
  NOT STARTED.
  Currently in standby mode.
  Number of jobs executed: 0
  Using thread pool &#39;org.quartz.simpl.SimpleThreadPool&#39; - with 10 threads.
  Using job-store &#39;org.springframework.scheduling.quartz.LocalDataSourceJobStore&#39; - which supports persistence. and is clustered.
</td>
<td class="MethodOfCaller">initialize</td>
<td class="FileOfCaller">QuartzScheduler.java</td>
<td class="LineOfCaller">294</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:28,217</td>
<td class="Message">Quartz scheduler &#39;MyScheduler&#39; initialized from an externally provided properties instance.</td>
<td class="MethodOfCaller">instantiate</td>
<td class="FileOfCaller">StdSchedulerFactory.java</td>
<td class="LineOfCaller">1374</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:28,218</td>
<td class="Message">Quartz scheduler version: 2.3.2</td>
<td class="MethodOfCaller">instantiate</td>
<td class="FileOfCaller">StdSchedulerFactory.java</td>
<td class="LineOfCaller">1378</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:28,218</td>
<td class="Message">JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@6cee8f5d</td>
<td class="MethodOfCaller">setJobFactory</td>
<td class="FileOfCaller">QuartzScheduler.java</td>
<td class="LineOfCaller">2293</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,467</td>
<td class="Message">component aspect implement[nodeProcessAspect] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">CmpAroundAspectBeanProcess.java</td>
<td class="LineOfCaller">32</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,654</td>
<td class="Message">proxy component[classifier] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,660</td>
<td class="Message">proxy component[end] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,666</td>
<td class="Message">proxy component[http] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,677</td>
<td class="Message">proxy component[knowledge] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,687</td>
<td class="Message">proxy component[llm] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,698</td>
<td class="Message">proxy component[enhanceJava] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,703</td>
<td class="Message">proxy component[reply] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,708</td>
<td class="Message">proxy component[start] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,713</td>
<td class="Message">proxy component[subflow] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:29,718</td>
<td class="Message">proxy component[switch] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:30,798</td>
<td class="Message">Init Token ignoreAuthUrls Config [ 集合 ]  ：[/test/jeecgDemo/html, /airag/flow/run, /airag/flow/run/*, /openapi/demo/index, /airag/app/queryById, /airag/chat/send, /airag/chat/upload, /airag/chat/init, /airag/chat/conversations, /airag/chat/conversation/*, /airag/chat/conversation/update/title, /airag/chat/messages, /airag/chat/messages/clear/*, /airag/chat/stop/*]</td>
<td class="MethodOfCaller">afterPropertiesSet</td>
<td class="FileOfCaller">IgnoreAuthPostProcessor.java</td>
<td class="LineOfCaller">41</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:30,798</td>
<td class="Message">Init Token ignoreAuthUrls Config [ 耗时 ] ：3毫秒</td>
<td class="MethodOfCaller">afterPropertiesSet</td>
<td class="FileOfCaller">IgnoreAuthPostProcessor.java</td>
<td class="LineOfCaller">49</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:30,809</td>
<td class="Message"> Init CodeGenerate Config [ Get Db Config From application.yml ] </td>
<td class="MethodOfCaller">initCodeGenerateDbConfig</td>
<td class="FileOfCaller">CodeGenerateDbConfig.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:31,061</td>
<td class="Message">Register ApplicationContext instances org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@1edb61b1</td>
<td class="MethodOfCaller">setApplicationContext</td>
<td class="FileOfCaller">MybatisPlusApplicationContextAware.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:31,569</td>
<td class="Message">Exposing 2 endpoint(s) beneath base path &#39;/actuator&#39;</td>
<td class="MethodOfCaller">&lt;init&gt;</td>
<td class="FileOfCaller">EndpointLinksResolver.java</td>
<td class="LineOfCaller">58</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:31,642</td>
<td class="Message">UT026003: Adding annotated server endpoint class org.jeecg.modules.message.websocket.WebSocket for path /websocket/{userId}</td>
<td class="MethodOfCaller">addEndpointInternal</td>
<td class="FileOfCaller">ServerWebSocketContainer.java</td>
<td class="LineOfCaller">639</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:31,647</td>
<td class="Message">UT026003: Adding annotated server endpoint class org.jeecg.modules.drag.config.websocket.DragChannelWebSocket for path /dragChannelSocket/{token}</td>
<td class="MethodOfCaller">addEndpointInternal</td>
<td class="FileOfCaller">ServerWebSocketContainer.java</td>
<td class="LineOfCaller">639</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:31,648</td>
<td class="Message">UT026003: Adding annotated server endpoint class org.jeecg.modules.drag.config.websocket.DragWebSocket for path /websocket/drag/{chartId}</td>
<td class="MethodOfCaller">addEndpointInternal</td>
<td class="FileOfCaller">ServerWebSocketContainer.java</td>
<td class="LineOfCaller">639</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:31,648</td>
<td class="Message">UT026003: Adding annotated server endpoint class org.jeecg.modules.demo.mock.vxe.websocket.VxeSocket for path /vxeSocket/{userId}/{pageId}</td>
<td class="MethodOfCaller">addEndpointInternal</td>
<td class="FileOfCaller">ServerWebSocketContainer.java</td>
<td class="LineOfCaller">639</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:31,674</td>
<td class="Message">flow info loaded from class config with el,class=com.yomahub.liteflow.parser.sql.SQLXmlELParser</td>
<td class="MethodOfCaller">info</td>
<td class="FileOfCaller">LFLog.java</td>
<td class="LineOfCaller">193</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:31,698</td>
<td class="Message">query sql: select id, application_name, chain from airag_flow where status = &#39;enable&#39; and chain is not null</td>
<td class="MethodOfCaller">info</td>
<td class="FileOfCaller">LFLog.java</td>
<td class="LineOfCaller">186</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:31,702</td>
<td class="Message">use dataSourceName[dataSource],has found liteflow config</td>
<td class="MethodOfCaller">getConn</td>
<td class="FileOfCaller">LiteFlowJdbcUtil.java</td>
<td class="LineOfCaller">43</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:32,024</td>
<td class="Message">starting server: Undertow - 2.2.28.Final</td>
<td class="MethodOfCaller">start</td>
<td class="FileOfCaller">Undertow.java</td>
<td class="LineOfCaller">120</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:32,033</td>
<td class="Message">XNIO version 3.8.7.Final</td>
<td class="MethodOfCaller">&lt;clinit&gt;</td>
<td class="FileOfCaller">Xnio.java</td>
<td class="LineOfCaller">95</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:32,044</td>
<td class="Message">XNIO NIO Implementation Version 3.8.7.Final</td>
<td class="MethodOfCaller">&lt;clinit&gt;</td>
<td class="FileOfCaller">NioXnio.java</td>
<td class="LineOfCaller">58</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:32,066</td>
<td class="Message">JBoss Threads version 3.1.0.Final</td>
<td class="MethodOfCaller">&lt;clinit&gt;</td>
<td class="FileOfCaller">Version.java</td>
<td class="LineOfCaller">52</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:32,094</td>
<td class="Message">Undertow started on port(s) 8080 (http) with context path &#39;/jeecg-boot&#39;</td>
<td class="MethodOfCaller">start</td>
<td class="FileOfCaller">UndertowWebServer.java</td>
<td class="LineOfCaller">119</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:32,368</td>
<td class="Message">Will start Quartz Scheduler [MyScheduler] in 1 seconds</td>
<td class="MethodOfCaller">startScheduler</td>
<td class="FileOfCaller">SchedulerFactoryBean.java</td>
<td class="LineOfCaller">734</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:32,386</td>
<td class="Message">Started JeecgSystemApplication in 10.595 seconds (JVM running for 11.204)</td>
<td class="MethodOfCaller">logStarted</td>
<td class="FileOfCaller">StartupInfoLogger.java</td>
<td class="LineOfCaller">61</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:32,392</td>
<td class="Message"> Init Code Generate Template [ 检测如果是JAR启动，Copy模板到config目录 ] </td>
<td class="MethodOfCaller">onApplicationEvent</td>
<td class="FileOfCaller">CodeTemplateInitListener.java</td>
<td class="LineOfCaller">30</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:32,408</td>
<td class="Message"> Init Code Generate Template completed in 16 ms</td>
<td class="MethodOfCaller">onApplicationEvent</td>
<td class="FileOfCaller">CodeTemplateInitListener.java</td>
<td class="LineOfCaller">33</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:32,429</td>
<td class="Message">
----------------------------------------------------------
	Application Jeecg-Boot is running! Access URLs:
	Local: 		http://localhost:8080/jeecg-boot
	External: 	http://192.168.1.112:8080/jeecg-boot/doc.html
	Swagger文档: 	http://192.168.1.112:8080/jeecg-boot/doc.html
----------------------------------------------------------</td>
<td class="MethodOfCaller">main</td>
<td class="FileOfCaller">JeecgSystemApplication.java</td>
<td class="LineOfCaller">41</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:33,373</td>
<td class="Message">Starting Quartz Scheduler now, after delay of 1 seconds</td>
<td class="MethodOfCaller">run</td>
<td class="FileOfCaller">SchedulerFactoryBean.java</td>
<td class="LineOfCaller">750</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:33,519</td>
<td class="Message">ClusterManager: detected 1 failed or restarted instances.</td>
<td class="MethodOfCaller">logWarnIfNonZero</td>
<td class="FileOfCaller">JobStoreSupport.java</td>
<td class="LineOfCaller">3644</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:33,519</td>
<td class="Message">ClusterManager: Scanning for instance &quot;qin1753932532893&quot;&#39;s failed in-progress jobs.</td>
<td class="MethodOfCaller">clusterRecover</td>
<td class="FileOfCaller">JobStoreSupport.java</td>
<td class="LineOfCaller">3503</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:33,528</td>
<td class="Message">Scheduler MyScheduler_$_192.168.1.1121755180808207 started.</td>
<td class="MethodOfCaller">start</td>
<td class="FileOfCaller">QuartzScheduler.java</td>
<td class="LineOfCaller">547</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:34,049</td>
<td class="Message">Initializing Spring DispatcherServlet &#39;dispatcherServlet&#39;</td>
<td class="MethodOfCaller">log</td>
<td class="FileOfCaller">ServletContextImpl.java</td>
<td class="LineOfCaller">389</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:34,049</td>
<td class="Message">Initializing Servlet &#39;dispatcherServlet&#39;</td>
<td class="MethodOfCaller">initServletBean</td>
<td class="FileOfCaller">FrameworkServlet.java</td>
<td class="LineOfCaller">525</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:13:34,051</td>
<td class="Message">Completed initialization in 2 ms</td>
<td class="MethodOfCaller">initServletBean</td>
<td class="FileOfCaller">FrameworkServlet.java</td>
<td class="LineOfCaller">547</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:02,054</td>
<td class="Message">获取验证码，Redis key = 226780fbeaab8e90c366b9cb71a0c2d81gsx，checkCode = 1gSx</td>
<td class="MethodOfCaller">randomImage</td>
<td class="FileOfCaller">LoginController.java</td>
<td class="LineOfCaller">554</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:13,995</td>
<td class="Message"> 登录接口用户的租户ID = 0</td>
<td class="MethodOfCaller">setLoginTenant</td>
<td class="FileOfCaller">SysUserServiceImpl.java</td>
<td class="LineOfCaller">982</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:14,112</td>
<td class="Message">加密操作，Aspect程序耗时：9ms</td>
<td class="MethodOfCaller">around</td>
<td class="FileOfCaller">SensitiveDataAspect.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:14,133</td>
<td class="Message">1 获取用户信息耗时（用户基础信息）7毫秒</td>
<td class="MethodOfCaller">getUserInfo</td>
<td class="FileOfCaller">LoginController.java</td>
<td class="LineOfCaller">150</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:14,178</td>
<td class="Message">2 获取用户信息耗时 (首页面配置)52毫秒</td>
<td class="MethodOfCaller">getUserInfo</td>
<td class="FileOfCaller">LoginController.java</td>
<td class="LineOfCaller">165</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:14,186</td>
<td class="Message">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;</td>
<td class="MethodOfCaller">queryAllDictItems</td>
<td class="FileOfCaller">SysDictServiceImpl.java</td>
<td class="LineOfCaller">165</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:14,201</td>
<td class="Message">      &gt;&gt;&gt; 1 获取系统字典项耗时（SQL）：15毫秒</td>
<td class="MethodOfCaller">queryAllDictItems</td>
<td class="FileOfCaller">SysDictServiceImpl.java</td>
<td class="LineOfCaller">184</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:14,228</td>
<td class="Message">      &gt;&gt;&gt; 2 获取系统字典项耗时（Enum）：42毫秒</td>
<td class="MethodOfCaller">queryAllDictItems</td>
<td class="FileOfCaller">SysDictServiceImpl.java</td>
<td class="LineOfCaller">188</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:14,228</td>
<td class="Message">      &gt;&gt;&gt; end 获取系统字典库总耗时：42毫秒</td>
<td class="MethodOfCaller">queryAllDictItems</td>
<td class="FileOfCaller">SysDictServiceImpl.java</td>
<td class="LineOfCaller">190</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:14,228</td>
<td class="Message">&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;</td>
<td class="MethodOfCaller">queryAllDictItems</td>
<td class="FileOfCaller">SysDictServiceImpl.java</td>
<td class="LineOfCaller">191</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:14,229</td>
<td class="Message">3 获取用户信息耗时 (字典数据)103毫秒</td>
<td class="MethodOfCaller">getUserInfo</td>
<td class="FileOfCaller">LoginController.java</td>
<td class="LineOfCaller">169</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:14,229</td>
<td class="Message">end 获取用户信息耗时 103毫秒</td>
<td class="MethodOfCaller">getUserInfo</td>
<td class="FileOfCaller">LoginController.java</td>
<td class="LineOfCaller">174</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:16,956</td>
<td class="Message">-----查询近两个月收到的未读通知-----，近2月的第一天：2025-07-01 00:00:00</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">388</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:16,982</td>
<td class="Message">begin 获取用户近2个月的系统公告 (通知)32毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">403</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:16,994</td>
<td class="Message">end 获取用户2个月的系统公告 (系统消息)44毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">411</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:34,846</td>
<td class="Message">-------通过数据库读取用户拥有的角色Rules------username： admin,Roles size: 2</td>
<td class="MethodOfCaller">getUserRoleSet</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1125</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:18:56,835</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:28,549</td>
<td class="Message">-----查询近两个月收到的未读通知-----，近2月的第一天：2025-07-01 00:00:00</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">388</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:28,568</td>
<td class="Message">begin 获取用户近2个月的系统公告 (通知)19毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">403</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:28,582</td>
<td class="Message">end 获取用户2个月的系统公告 (系统消息)33毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">411</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,376</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,412</td>
<td class="Message">字典拼接的查询SQL：select realname,username from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,416</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[realname, username], realSelectFields=[realname, username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,427</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,427</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,427</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [realname, username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,429</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;&#39;, fields=[realname, username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,438</td>
<td class="Message">字典拼接的查询SQL：select name,id from airag_flow where status = &#39;enable&#39; </td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,440</td>
<td class="Message">获取select sql信息 ：{airag_flow=SelectSqlInfo{fromTableName=&#39;airag_flow&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,443</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,443</td>
<td class="Message">checkWhiteList tableName: airag_flow</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,443</td>
<td class="Message">白名单校验：查询表&quot;airag_flow&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,444</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;airag_flow&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,449</td>
<td class="Message">字典拼接的查询SQL：select name,id from airag_model where model_type = &#39;LLM&#39; </td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,451</td>
<td class="Message">获取select sql信息 ：{airag_model=SelectSqlInfo{fromTableName=&#39;airag_model&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,454</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,455</td>
<td class="Message">checkWhiteList tableName: airag_model</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,455</td>
<td class="Message">白名单校验：查询表&quot;airag_model&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:38,455</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;airag_model&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:41,835</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:41,853</td>
<td class="Message">字典拼接的查询SQL：select name,id from airag_model where model_type = &#39;EMBED&#39;</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:41,854</td>
<td class="Message">获取select sql信息 ：{airag_model=SelectSqlInfo{fromTableName=&#39;airag_model&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:41,857</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:41,858</td>
<td class="Message">checkWhiteList tableName: airag_model</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:41,859</td>
<td class="Message">白名单校验：查询表&quot;airag_model&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:41,859</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;airag_model&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:43,981</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:45,227</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:47,243</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:48,698</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:50,547</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:53,538</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:54,774</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:56,372</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:19:57,354</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:23:24,261</td>
<td class="Message">-----查询近两个月收到的未读通知-----，近2月的第一天：2025-07-01 00:00:00</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">388</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:23:24,292</td>
<td class="Message">begin 获取用户近2个月的系统公告 (通知)31毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">403</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:23:24,316</td>
<td class="Message">end 获取用户2个月的系统公告 (系统消息)55毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">411</td>
</tr>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
  <head>
    <title>Logback Log Messages</title>
<style  type="text/css">
table { margin-left: 2em; margin-right: 2em; border-left: 2px solid #AAA; }
TR.even { background: #FFFFFF; }
TR.odd { background: #EAEAEA; }
TR.warn TD.Level, TR.error TD.Level, TR.fatal TD.Level {font-weight: bold; color: #FF4040 }
TD { padding-right: 1ex; padding-left: 1ex; border-right: 2px solid #AAA; }
TD.Time, TD.Date { text-align: right; font-family: courier, monospace; font-size: smaller; }
TD.Thread { text-align: left; }
TD.Level { text-align: right; }
TD.Logger { text-align: left; }
TR.header { background: #596ED5; color: #FFF; font-weight: bold; font-size: larger; }
TD.Exception { background: #A2AEE8; font-family: courier, monospace;}
</style>

  </head>
<body>
<hr/>
<p>Log session start time Thu Aug 14 22:35:39 CST 2025</p><p></p>

<table cellspacing="0">
<tr class="header">
<td class="Level">Level</td>
<td class="Date">Date</td>
<td class="Message">Message</td>
<td class="MethodOfCaller">MethodOfCaller</td>
<td class="FileOfCaller">FileOfCaller</td>
<td class="LineOfCaller">LineOfCaller</td>
</tr>


<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:39,053</td>
<td class="Message">HV000001: Hibernate Validator 8.0.2.Final</td>
<td class="MethodOfCaller">&lt;clinit&gt;</td>
<td class="FileOfCaller">Version.java</td>
<td class="LineOfCaller">21</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:39,096</td>
<td class="Message">Starting JeecgSystemApplication using Java 17.0.15 with PID 58935 (/Users/mac/Desktop/project/jeecg/jeecg-boot/jeecg-module-system/jeecg-system-start/target/classes started by mac in /Users/mac/Desktop/project/jeecg/jeecg-boot)</td>
<td class="MethodOfCaller">logStarting</td>
<td class="FileOfCaller">StartupInfoLogger.java</td>
<td class="LineOfCaller">53</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:39,097</td>
<td class="Message">The following 1 profile is active: &quot;dev&quot;</td>
<td class="MethodOfCaller">logStartupProfileInfo</td>
<td class="FileOfCaller">SpringApplication.java</td>
<td class="LineOfCaller">658</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,655</td>
<td class="Message">Multiple Spring Data modules found, entering strict repository configuration mode</td>
<td class="MethodOfCaller">multipleStoresDetected</td>
<td class="FileOfCaller">RepositoryConfigurationDelegate.java</td>
<td class="LineOfCaller">295</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,657</td>
<td class="Message">Bootstrapping Spring Data Redis repositories in DEFAULT mode.</td>
<td class="MethodOfCaller">registerRepositoriesIn</td>
<td class="FileOfCaller">RepositoryConfigurationDelegate.java</td>
<td class="LineOfCaller">143</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,734</td>
<td class="Message">Finished Spring Data repository scanning in 67 ms. Found 0 Redis repository interfaces.</td>
<td class="MethodOfCaller">registerRepositoriesIn</td>
<td class="FileOfCaller">RepositoryConfigurationDelegate.java</td>
<td class="LineOfCaller">211</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,797</td>
<td class="Message"> ******************* init miniDao config [ begin ] *********************** </td>
<td class="MethodOfCaller">miniDaoBeanScannerConfigurer</td>
<td class="FileOfCaller">MinidaoAutoConfiguration.java</td>
<td class="LineOfCaller">23</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,798</td>
<td class="Message"> ------ minidao.base-package ------- org.jeecg.modules.jmreport.*,org.jeecg.modules.drag.*</td>
<td class="MethodOfCaller">miniDaoBeanScannerConfigurer</td>
<td class="FileOfCaller">MinidaoAutoConfiguration.java</td>
<td class="LineOfCaller">25</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,798</td>
<td class="Message"> *******************  init miniDao config  [ end ] *********************** </td>
<td class="MethodOfCaller">miniDaoBeanScannerConfigurer</td>
<td class="FileOfCaller">MinidaoAutoConfiguration.java</td>
<td class="LineOfCaller">42</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,950</td>
<td class="Message">Overriding bean definition for bean &#39;classifier&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.a; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/a.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,950</td>
<td class="Message">Overriding bean definition for bean &#39;end&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.b; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/b.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,951</td>
<td class="Message">Overriding bean definition for bean &#39;http&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.c; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/c.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,952</td>
<td class="Message">Overriding bean definition for bean &#39;knowledge&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.d; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/d.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,953</td>
<td class="Message">Overriding bean definition for bean &#39;llm&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.e; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/e.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,953</td>
<td class="Message">Overriding bean definition for bean &#39;enhanceJava&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.enhance.a; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/enhance/a.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,953</td>
<td class="Message">Overriding bean definition for bean &#39;reply&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.f; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/f.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,954</td>
<td class="Message">Overriding bean definition for bean &#39;start&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.g; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/g.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,955</td>
<td class="Message">Overriding bean definition for bean &#39;subflow&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.h; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/h.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:40,955</td>
<td class="Message">Overriding bean definition for bean &#39;switch&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.i; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/i.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,180</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportCategoryDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,180</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,180</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDataSourceDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,180</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDbDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDbFieldDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDbParamDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDictDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDictItemDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportExportJobDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportExportLogDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportLinkDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportMapDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportShareDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.JimuDragCategoryDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.JimuDragMapDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.JimuReportIconLibDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragCompDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDataSourceDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDatasetHeadDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,181</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDatasetItemDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,182</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDatasetParamDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,182</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragPageCompDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,182</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragPageDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,182</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragShareDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="warn odd">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 22:35:41,185</td>
<td class="Message">Cannot enhance @Configuration bean definition &#39;com.yomahub.liteflow.springboot.config.LiteflowMainAutoConfiguration&#39; since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as &#39;static&#39; and/or marking the containing configuration class as &#39;proxyBeanMethods=false&#39;.</td>
<td class="MethodOfCaller">enhanceConfigurationClasses</td>
<td class="FileOfCaller">ConfigurationClassPostProcessor.java</td>
<td class="LineOfCaller">514</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,667</td>
<td class="Message">===============(1)创建缓存管理器RedisCacheManager</td>
<td class="MethodOfCaller">redisCacheManager</td>
<td class="FileOfCaller">ShiroConfig.java</td>
<td class="LineOfCaller">295</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:41,669</td>
<td class="Message">===============(2)创建RedisManager,连接Redis..</td>
<td class="MethodOfCaller">redisManager</td>
<td class="FileOfCaller">ShiroConfig.java</td>
<td class="LineOfCaller">316</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:42,173</td>
<td class="Message">Initializing Spring embedded WebApplicationContext</td>
<td class="MethodOfCaller">log</td>
<td class="FileOfCaller">ServletContextImpl.java</td>
<td class="LineOfCaller">372</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:42,174</td>
<td class="Message">Root WebApplicationContext: initialization completed in 2801 ms</td>
<td class="MethodOfCaller">prepareWebApplicationContext</td>
<td class="FileOfCaller">ServletWebServerApplicationContext.java</td>
<td class="LineOfCaller">301</td>
</tr>

<tr class="error even">
<td class="Level">ERROR</td>
<td class="Date">2025-08-14 22:35:42,726</td>
<td class="Message">init datasource error, url: jdbc:mysql://127.0.0.1:3306/jeecg-boot?characterEncoding=UTF-8&amp;useUnicode=true&amp;useSSL=false&amp;tinyInt1isBit=false&amp;allowPublicKeyRetrieval=true&amp;serverTimezone=Asia/Shanghai</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DruidDataSource.java</td>
<td class="LineOfCaller">599</td>
</tr>
<tr><td class="Exception" colspan="6">java.sql.SQLException: Access denied for user &#39;root&#39;@&#39;192.168.65.1&#39; (using password: YES)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:828)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.&lt;init&gt;(ConnectionImpl.java:448)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterAdapter.connection_connect(FilterAdapter.java:764)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterEventAdapter.connection_connect(FilterEventAdapter.java:33)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:244)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1687)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1803)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:595)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.creator.druid.DruidDataSourceCreator.createDataSource(DruidDataSourceCreator.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.creator.DefaultDataSourceCreator.createDataSource(DefaultDataSourceCreator.java:97)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.provider.AbstractDataSourceProvider.createDataSourceMap(AbstractDataSourceProvider.java:53)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.provider.YmlDynamicDataSourceProvider.loadDataSources(YmlDynamicDataSourceProvider.java:53)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.DynamicRoutingDataSource.afterPropertiesSet(DynamicRoutingDataSource.java:225)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1865)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1814)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:785)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:768)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:146)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:509)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1451)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:606)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1221)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1187)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1122)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:987)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:627)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.SpringApplication.run(SpringApplication.java:318)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.JeecgSystemApplication.main(JeecgSystemApplication.java:42)
</td></tr>
<tr class="error odd">
<td class="Level">ERROR</td>
<td class="Date">2025-08-14 22:35:42,730</td>
<td class="Message">{dataSource-1} init error</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DruidDataSource.java</td>
<td class="LineOfCaller">648</td>
</tr>
<tr><td class="Exception" colspan="6">java.sql.SQLException: Access denied for user &#39;root&#39;@&#39;192.168.65.1&#39; (using password: YES)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:828)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.&lt;init&gt;(ConnectionImpl.java:448)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterAdapter.connection_connect(FilterAdapter.java:764)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterEventAdapter.connection_connect(FilterEventAdapter.java:33)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:244)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1687)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1803)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:595)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.creator.druid.DruidDataSourceCreator.createDataSource(DruidDataSourceCreator.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.creator.DefaultDataSourceCreator.createDataSource(DefaultDataSourceCreator.java:97)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.provider.AbstractDataSourceProvider.createDataSourceMap(AbstractDataSourceProvider.java:53)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.provider.YmlDynamicDataSourceProvider.loadDataSources(YmlDynamicDataSourceProvider.java:53)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.DynamicRoutingDataSource.afterPropertiesSet(DynamicRoutingDataSource.java:225)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1865)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1814)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:785)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:768)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:146)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:509)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1451)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:606)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1221)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1187)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1122)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:987)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:627)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.SpringApplication.run(SpringApplication.java:318)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.JeecgSystemApplication.main(JeecgSystemApplication.java:42)
</td></tr>
<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:42,731</td>
<td class="Message">{dataSource-1,master} inited</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DruidDataSource.java</td>
<td class="LineOfCaller">673</td>
</tr>

<tr class="warn odd">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 22:35:42,732</td>
<td class="Message">Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name &#39;flywayConfig&#39;: Unsatisfied dependency expressed through field &#39;dataSource&#39;: Error creating bean with name &#39;dataSource&#39; defined in class path resource [com/baomidou/dynamic/datasource/spring/boot/autoconfigure/DynamicDataSourceAutoConfiguration.class]: druid create error</td>
<td class="MethodOfCaller">refresh</td>
<td class="FileOfCaller">AbstractApplicationContext.java</td>
<td class="LineOfCaller">635</td>
</tr>

<tr class="error even">
<td class="Level">ERROR</td>
<td class="Date">2025-08-14 22:35:42,776</td>
<td class="Message">create connection SQLException, url: jdbc:mysql://127.0.0.1:3306/jeecg-boot?characterEncoding=UTF-8&amp;useUnicode=true&amp;useSSL=false&amp;tinyInt1isBit=false&amp;allowPublicKeyRetrieval=true&amp;serverTimezone=Asia/Shanghai, errorCode 1045, state 28000</td>
<td class="MethodOfCaller">run</td>
<td class="FileOfCaller">DruidDataSource.java</td>
<td class="LineOfCaller">2592</td>
</tr>
<tr><td class="Exception" colspan="6">java.sql.SQLException: Access denied for user &#39;root&#39;@&#39;192.168.65.1&#39; (using password: YES)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:828)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.&lt;init&gt;(ConnectionImpl.java:448)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterAdapter.connection_connect(FilterAdapter.java:764)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterEventAdapter.connection_connect(FilterEventAdapter.java:33)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:244)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1687)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1803)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2590)
</td></tr>
<tr class="error odd">
<td class="Level">ERROR</td>
<td class="Date">2025-08-14 22:35:42,800</td>
<td class="Message">create connection SQLException, url: jdbc:mysql://127.0.0.1:3306/jeecg-boot?characterEncoding=UTF-8&amp;useUnicode=true&amp;useSSL=false&amp;tinyInt1isBit=false&amp;allowPublicKeyRetrieval=true&amp;serverTimezone=Asia/Shanghai, errorCode 1045, state 28000</td>
<td class="MethodOfCaller">run</td>
<td class="FileOfCaller">DruidDataSource.java</td>
<td class="LineOfCaller">2592</td>
</tr>
<tr><td class="Exception" colspan="6">java.sql.SQLException: Access denied for user &#39;root&#39;@&#39;192.168.65.1&#39; (using password: YES)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:828)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.&lt;init&gt;(ConnectionImpl.java:448)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterAdapter.connection_connect(FilterAdapter.java:764)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterEventAdapter.connection_connect(FilterEventAdapter.java:33)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:244)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1687)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1803)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2590)
</td></tr>
<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:42,801</td>
<td class="Message">{dataSource-1} failContinuous is true</td>
<td class="MethodOfCaller">setFailContinuous</td>
<td class="FileOfCaller">DruidAbstractDataSource.java</td>
<td class="LineOfCaller">1900</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:35:42,819</td>
<td class="Message">

Error starting ApplicationContext. To display the condition evaluation report re-run your application with &#39;debug&#39; enabled.</td>
<td class="MethodOfCaller">logMessage</td>
<td class="FileOfCaller">ConditionEvaluationReportLogger.java</td>
<td class="LineOfCaller">82</td>
</tr>

<tr class="error even">
<td class="Level">ERROR</td>
<td class="Date">2025-08-14 22:35:42,832</td>
<td class="Message">Application run failed</td>
<td class="MethodOfCaller">reportFailure</td>
<td class="FileOfCaller">SpringApplication.java</td>
<td class="LineOfCaller">858</td>
</tr>
<tr><td class="Exception" colspan="6">org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name &#39;flywayConfig&#39;: Unsatisfied dependency expressed through field &#39;dataSource&#39;: Error creating bean with name &#39;dataSource&#39; defined in class path resource [com/baomidou/dynamic/datasource/spring/boot/autoconfigure/DynamicDataSourceAutoConfiguration.class]: druid create error
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:788)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:768)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:146)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:509)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1451)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:606)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.instantiateSingleton(DefaultListableBeanFactory.java:1221)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingleton(DefaultListableBeanFactory.java:1187)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:1122)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:987)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:627)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.SpringApplication.run(SpringApplication.java:318)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.JeecgSystemApplication.main(JeecgSystemApplication.java:42)
<br />Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name &#39;dataSource&#39; defined in class path resource [com/baomidou/dynamic/datasource/spring/boot/autoconfigure/DynamicDataSourceAutoConfiguration.class]: druid create error
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1818)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:785)
<br />&nbsp;&nbsp;&nbsp;&nbsp;	... 20 common frames omitted
<br />Caused by: com.baomidou.dynamic.datasource.exception.ErrorCreateDataSourceException: druid create error
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.creator.druid.DruidDataSourceCreator.createDataSource(DruidDataSourceCreator.java:134)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.creator.DefaultDataSourceCreator.createDataSource(DefaultDataSourceCreator.java:97)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.provider.AbstractDataSourceProvider.createDataSourceMap(AbstractDataSourceProvider.java:53)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.provider.YmlDynamicDataSourceProvider.loadDataSources(YmlDynamicDataSourceProvider.java:53)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.DynamicRoutingDataSource.afterPropertiesSet(DynamicRoutingDataSource.java:225)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1865)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1814)
<br />&nbsp;&nbsp;&nbsp;&nbsp;	... 29 common frames omitted
<br />Caused by: java.sql.SQLException: Access denied for user &#39;root&#39;@&#39;192.168.65.1&#39; (using password: YES)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:828)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.&lt;init&gt;(ConnectionImpl.java:448)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterAdapter.connection_connect(FilterAdapter.java:764)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterEventAdapter.connection_connect(FilterEventAdapter.java:33)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:244)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1687)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1803)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:595)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.baomidou.dynamic.datasource.creator.druid.DruidDataSourceCreator.createDataSource(DruidDataSourceCreator.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;	... 35 common frames omitted
</td></tr>
<tr class="error odd">
<td class="Level">ERROR</td>
<td class="Date">2025-08-14 22:35:43,313</td>
<td class="Message">create connection SQLException, url: jdbc:mysql://127.0.0.1:3306/jeecg-boot?characterEncoding=UTF-8&amp;useUnicode=true&amp;useSSL=false&amp;tinyInt1isBit=false&amp;allowPublicKeyRetrieval=true&amp;serverTimezone=Asia/Shanghai, errorCode 1045, state 28000</td>
<td class="MethodOfCaller">run</td>
<td class="FileOfCaller">DruidDataSource.java</td>
<td class="LineOfCaller">2592</td>
</tr>
<tr><td class="Exception" colspan="6">java.sql.SQLException: Access denied for user &#39;root&#39;@&#39;192.168.65.1&#39; (using password: YES)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:828)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.&lt;init&gt;(ConnectionImpl.java:448)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:241)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:198)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterAdapter.connection_connect(FilterAdapter.java:764)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterEventAdapter.connection_connect(FilterEventAdapter.java:33)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:244)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:126)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1687)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1803)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2590)
</td></tr></table>
</body></html><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
  <head>
    <title>Logback Log Messages</title>
<style  type="text/css">
table { margin-left: 2em; margin-right: 2em; border-left: 2px solid #AAA; }
TR.even { background: #FFFFFF; }
TR.odd { background: #EAEAEA; }
TR.warn TD.Level, TR.error TD.Level, TR.fatal TD.Level {font-weight: bold; color: #FF4040 }
TD { padding-right: 1ex; padding-left: 1ex; border-right: 2px solid #AAA; }
TD.Time, TD.Date { text-align: right; font-family: courier, monospace; font-size: smaller; }
TD.Thread { text-align: left; }
TD.Level { text-align: right; }
TD.Logger { text-align: left; }
TR.header { background: #596ED5; color: #FFF; font-weight: bold; font-size: larger; }
TD.Exception { background: #A2AEE8; font-family: courier, monospace;}
</style>

  </head>
<body>
<hr/>
<p>Log session start time Thu Aug 14 22:36:11 CST 2025</p><p></p>

<table cellspacing="0">
<tr class="header">
<td class="Level">Level</td>
<td class="Date">Date</td>
<td class="Message">Message</td>
<td class="MethodOfCaller">MethodOfCaller</td>
<td class="FileOfCaller">FileOfCaller</td>
<td class="LineOfCaller">LineOfCaller</td>
</tr>


<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:11,931</td>
<td class="Message">HV000001: Hibernate Validator 8.0.2.Final</td>
<td class="MethodOfCaller">&lt;clinit&gt;</td>
<td class="FileOfCaller">Version.java</td>
<td class="LineOfCaller">21</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:11,968</td>
<td class="Message">Starting JeecgSystemApplication using Java 17.0.15 with PID 59855 (/Users/mac/Desktop/project/jeecg/jeecg-boot/jeecg-module-system/jeecg-system-start/target/classes started by mac in /Users/mac/Desktop/project/jeecg/jeecg-boot)</td>
<td class="MethodOfCaller">logStarting</td>
<td class="FileOfCaller">StartupInfoLogger.java</td>
<td class="LineOfCaller">53</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:11,969</td>
<td class="Message">The following 1 profile is active: &quot;dev&quot;</td>
<td class="MethodOfCaller">logStartupProfileInfo</td>
<td class="FileOfCaller">SpringApplication.java</td>
<td class="LineOfCaller">658</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,029</td>
<td class="Message">Multiple Spring Data modules found, entering strict repository configuration mode</td>
<td class="MethodOfCaller">multipleStoresDetected</td>
<td class="FileOfCaller">RepositoryConfigurationDelegate.java</td>
<td class="LineOfCaller">295</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,031</td>
<td class="Message">Bootstrapping Spring Data Redis repositories in DEFAULT mode.</td>
<td class="MethodOfCaller">registerRepositoriesIn</td>
<td class="FileOfCaller">RepositoryConfigurationDelegate.java</td>
<td class="LineOfCaller">143</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,131</td>
<td class="Message">Finished Spring Data repository scanning in 82 ms. Found 0 Redis repository interfaces.</td>
<td class="MethodOfCaller">registerRepositoriesIn</td>
<td class="FileOfCaller">RepositoryConfigurationDelegate.java</td>
<td class="LineOfCaller">211</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,193</td>
<td class="Message"> ******************* init miniDao config [ begin ] *********************** </td>
<td class="MethodOfCaller">miniDaoBeanScannerConfigurer</td>
<td class="FileOfCaller">MinidaoAutoConfiguration.java</td>
<td class="LineOfCaller">23</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,194</td>
<td class="Message"> ------ minidao.base-package ------- org.jeecg.modules.jmreport.*,org.jeecg.modules.drag.*</td>
<td class="MethodOfCaller">miniDaoBeanScannerConfigurer</td>
<td class="FileOfCaller">MinidaoAutoConfiguration.java</td>
<td class="LineOfCaller">25</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,194</td>
<td class="Message"> *******************  init miniDao config  [ end ] *********************** </td>
<td class="MethodOfCaller">miniDaoBeanScannerConfigurer</td>
<td class="FileOfCaller">MinidaoAutoConfiguration.java</td>
<td class="LineOfCaller">42</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,362</td>
<td class="Message">Overriding bean definition for bean &#39;classifier&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.a; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/a.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,363</td>
<td class="Message">Overriding bean definition for bean &#39;end&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.b; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/b.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,364</td>
<td class="Message">Overriding bean definition for bean &#39;http&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.c; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/c.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,365</td>
<td class="Message">Overriding bean definition for bean &#39;knowledge&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.d; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/d.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,365</td>
<td class="Message">Overriding bean definition for bean &#39;llm&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.e; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/e.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,366</td>
<td class="Message">Overriding bean definition for bean &#39;enhanceJava&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.enhance.a; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/enhance/a.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,367</td>
<td class="Message">Overriding bean definition for bean &#39;reply&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.f; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/f.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,369</td>
<td class="Message">Overriding bean definition for bean &#39;start&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.g; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/g.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,370</td>
<td class="Message">Overriding bean definition for bean &#39;subflow&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.h; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/h.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,371</td>
<td class="Message">Overriding bean definition for bean &#39;switch&#39; with a different definition: replacing [Generic bean: class=org.jeecg.modules.airag.flow.component.i; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null; defined in URL [jar:file:/Users/mac/.m2/repository/org/jeecgframework/boot3/jeecg-aiflow/1.1.1/jeecg-aiflow-1.1.1.jar!/org/jeecg/modules/airag/flow/component/i.class]] with [Generic bean: class=com.yomahub.liteflow.core.proxy.DeclWarpBean; scope=singleton; abstract=false; lazyInit=null; autowireMode=0; dependencyCheck=0; autowireCandidate=true; primary=false; fallback=false; factoryBeanName=null; factoryMethodName=null; initMethodNames=null; destroyMethodNames=null]</td>
<td class="MethodOfCaller">logBeanDefinitionOverriding</td>
<td class="FileOfCaller">DefaultListableBeanFactory.java</td>
<td class="LineOfCaller">1333</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,662</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportCategoryDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,663</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,663</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDataSourceDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,663</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDbDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,663</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDbFieldDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,663</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDbParamDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,664</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDictDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,664</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportDictItemDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,664</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportExportJobDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,664</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportExportLogDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,664</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportLinkDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,664</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportMapDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,664</td>
<td class="Message">register minidao name is { org.jeecg.modules.jmreport.desreport.dao.JimuReportShareDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,664</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.JimuDragCategoryDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,664</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.JimuDragMapDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,664</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.JimuReportIconLibDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,665</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragCompDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,665</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDataSourceDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,665</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDatasetHeadDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,665</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDatasetItemDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,665</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragDatasetParamDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,665</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragPageCompDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,665</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragPageDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:14,665</td>
<td class="Message">register minidao name is { org.jeecg.modules.drag.dao.OnlDragShareDao }</td>
<td class="MethodOfCaller">doScan</td>
<td class="FileOfCaller">MiniDaoClassPathMapperScanner.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="warn odd">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 22:36:14,669</td>
<td class="Message">Cannot enhance @Configuration bean definition &#39;com.yomahub.liteflow.springboot.config.LiteflowMainAutoConfiguration&#39; since its singleton instance has been created too early. The typical cause is a non-static @Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as &#39;static&#39; and/or marking the containing configuration class as &#39;proxyBeanMethods=false&#39;.</td>
<td class="MethodOfCaller">enhanceConfigurationClasses</td>
<td class="FileOfCaller">ConfigurationClassPostProcessor.java</td>
<td class="LineOfCaller">514</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:15,183</td>
<td class="Message">===============(1)创建缓存管理器RedisCacheManager</td>
<td class="MethodOfCaller">redisCacheManager</td>
<td class="FileOfCaller">ShiroConfig.java</td>
<td class="LineOfCaller">295</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:15,185</td>
<td class="Message">===============(2)创建RedisManager,连接Redis..</td>
<td class="MethodOfCaller">redisManager</td>
<td class="FileOfCaller">ShiroConfig.java</td>
<td class="LineOfCaller">316</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:15,730</td>
<td class="Message">Initializing Spring embedded WebApplicationContext</td>
<td class="MethodOfCaller">log</td>
<td class="FileOfCaller">ServletContextImpl.java</td>
<td class="LineOfCaller">372</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:15,731</td>
<td class="Message">Root WebApplicationContext: initialization completed in 3528 ms</td>
<td class="MethodOfCaller">prepareWebApplicationContext</td>
<td class="FileOfCaller">ServletWebServerApplicationContext.java</td>
<td class="LineOfCaller">301</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:16,287</td>
<td class="Message">{dataSource-1,master} inited</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DruidDataSource.java</td>
<td class="LineOfCaller">673</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:16,287</td>
<td class="Message">dynamic-datasource - add a datasource named [master] success</td>
<td class="MethodOfCaller">addDataSource</td>
<td class="FileOfCaller">DynamicRoutingDataSource.java</td>
<td class="LineOfCaller">154</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:16,288</td>
<td class="Message">dynamic-datasource initial loaded [1] datasource,primary datasource named [master]</td>
<td class="MethodOfCaller">afterPropertiesSet</td>
<td class="FileOfCaller">DynamicRoutingDataSource.java</td>
<td class="LineOfCaller">237</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:16,337</td>
<td class="Message">当前数据库类型: MYSQL</td>
<td class="MethodOfCaller">mybatisPlusInterceptor</td>
<td class="FileOfCaller">MybatisPlusSaasConfig.java</td>
<td class="LineOfCaller">138</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:17,730</td>
<td class="Message"> --- redis config init --- </td>
<td class="MethodOfCaller">redisTemplate</td>
<td class="FileOfCaller">RedisConfig.java</td>
<td class="LineOfCaller">56</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:19,195</td>
<td class="Message">Using default implementation for ThreadExecutor</td>
<td class="MethodOfCaller">instantiate</td>
<td class="FileOfCaller">StdSchedulerFactory.java</td>
<td class="LineOfCaller">1220</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:19,197</td>
<td class="Message">Job execution threads will use class loader of thread: main</td>
<td class="MethodOfCaller">initialize</td>
<td class="FileOfCaller">SimpleThreadPool.java</td>
<td class="LineOfCaller">268</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:19,204</td>
<td class="Message">Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl</td>
<td class="MethodOfCaller">&lt;init&gt;</td>
<td class="FileOfCaller">SchedulerSignalerImpl.java</td>
<td class="LineOfCaller">61</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:19,205</td>
<td class="Message">Quartz Scheduler v.2.3.2 created.</td>
<td class="MethodOfCaller">&lt;init&gt;</td>
<td class="FileOfCaller">QuartzScheduler.java</td>
<td class="LineOfCaller">229</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:19,206</td>
<td class="Message">Using db table-based data access locking (synchronization).</td>
<td class="MethodOfCaller">initialize</td>
<td class="FileOfCaller">JobStoreSupport.java</td>
<td class="LineOfCaller">672</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:19,207</td>
<td class="Message">JobStoreCMT initialized.</td>
<td class="MethodOfCaller">initialize</td>
<td class="FileOfCaller">JobStoreCMT.java</td>
<td class="LineOfCaller">145</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:19,208</td>
<td class="Message">Scheduler meta-data: Quartz Scheduler (v2.3.2) &#39;MyScheduler&#39; with instanceId &#39;192.168.1.1121755182179197&#39;
  Scheduler class: &#39;org.quartz.core.QuartzScheduler&#39; - running locally.
  NOT STARTED.
  Currently in standby mode.
  Number of jobs executed: 0
  Using thread pool &#39;org.quartz.simpl.SimpleThreadPool&#39; - with 10 threads.
  Using job-store &#39;org.springframework.scheduling.quartz.LocalDataSourceJobStore&#39; - which supports persistence. and is clustered.
</td>
<td class="MethodOfCaller">initialize</td>
<td class="FileOfCaller">QuartzScheduler.java</td>
<td class="LineOfCaller">294</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:19,208</td>
<td class="Message">Quartz scheduler &#39;MyScheduler&#39; initialized from an externally provided properties instance.</td>
<td class="MethodOfCaller">instantiate</td>
<td class="FileOfCaller">StdSchedulerFactory.java</td>
<td class="LineOfCaller">1374</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:19,208</td>
<td class="Message">Quartz scheduler version: 2.3.2</td>
<td class="MethodOfCaller">instantiate</td>
<td class="FileOfCaller">StdSchedulerFactory.java</td>
<td class="LineOfCaller">1378</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:19,208</td>
<td class="Message">JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@5e491535</td>
<td class="MethodOfCaller">setJobFactory</td>
<td class="FileOfCaller">QuartzScheduler.java</td>
<td class="LineOfCaller">2293</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:20,803</td>
<td class="Message">component aspect implement[nodeProcessAspect] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">CmpAroundAspectBeanProcess.java</td>
<td class="LineOfCaller">32</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:20,996</td>
<td class="Message">proxy component[classifier] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:21,003</td>
<td class="Message">proxy component[end] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:21,010</td>
<td class="Message">proxy component[http] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:21,019</td>
<td class="Message">proxy component[knowledge] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:21,027</td>
<td class="Message">proxy component[llm] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:21,039</td>
<td class="Message">proxy component[enhanceJava] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:21,044</td>
<td class="Message">proxy component[reply] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:21,050</td>
<td class="Message">proxy component[start] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:21,056</td>
<td class="Message">proxy component[subflow] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:21,063</td>
<td class="Message">proxy component[switch] has been found</td>
<td class="MethodOfCaller">postProcessAfterInitialization</td>
<td class="FileOfCaller">DeclWarpBeanProcess.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:22,138</td>
<td class="Message">Init Token ignoreAuthUrls Config [ 集合 ]  ：[/test/jeecgDemo/html, /airag/app/queryById, /openapi/demo/index, /airag/chat/send, /airag/chat/upload, /airag/chat/init, /airag/chat/conversations, /airag/chat/conversation/*, /airag/chat/conversation/update/title, /airag/chat/messages, /airag/chat/messages/clear/*, /airag/chat/stop/*, /airag/flow/run, /airag/flow/run/*]</td>
<td class="MethodOfCaller">afterPropertiesSet</td>
<td class="FileOfCaller">IgnoreAuthPostProcessor.java</td>
<td class="LineOfCaller">41</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:22,139</td>
<td class="Message">Init Token ignoreAuthUrls Config [ 耗时 ] ：4毫秒</td>
<td class="MethodOfCaller">afterPropertiesSet</td>
<td class="FileOfCaller">IgnoreAuthPostProcessor.java</td>
<td class="LineOfCaller">49</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:22,147</td>
<td class="Message"> Init CodeGenerate Config [ Get Db Config From application.yml ] </td>
<td class="MethodOfCaller">initCodeGenerateDbConfig</td>
<td class="FileOfCaller">CodeGenerateDbConfig.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:22,687</td>
<td class="Message">Register ApplicationContext instances org.springframework.boot.web.servlet.context.AnnotationConfigServletWebServerApplicationContext@7c2a69b4</td>
<td class="MethodOfCaller">setApplicationContext</td>
<td class="FileOfCaller">MybatisPlusApplicationContextAware.java</td>
<td class="LineOfCaller">40</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,443</td>
<td class="Message">Exposing 3 endpoints beneath base path &#39;/actuator&#39;</td>
<td class="MethodOfCaller">&lt;init&gt;</td>
<td class="FileOfCaller">EndpointLinksResolver.java</td>
<td class="LineOfCaller">60</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,533</td>
<td class="Message">UT026003: Adding annotated server endpoint class org.jeecg.modules.message.websocket.WebSocket for path /websocket/{userId}</td>
<td class="MethodOfCaller">addEndpointInternal</td>
<td class="FileOfCaller">ServerWebSocketContainer.java</td>
<td class="LineOfCaller">647</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,538</td>
<td class="Message">UT026003: Adding annotated server endpoint class org.jeecg.modules.drag.config.websocket.DragChannelWebSocket for path /dragChannelSocket/{token}</td>
<td class="MethodOfCaller">addEndpointInternal</td>
<td class="FileOfCaller">ServerWebSocketContainer.java</td>
<td class="LineOfCaller">647</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,539</td>
<td class="Message">UT026003: Adding annotated server endpoint class org.jeecg.modules.drag.config.websocket.DragWebSocket for path /websocket/drag/{chartId}</td>
<td class="MethodOfCaller">addEndpointInternal</td>
<td class="FileOfCaller">ServerWebSocketContainer.java</td>
<td class="LineOfCaller">647</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,539</td>
<td class="Message">UT026003: Adding annotated server endpoint class org.jeecg.modules.demo.mock.vxe.websocket.VxeSocket for path /vxeSocket/{userId}/{pageId}</td>
<td class="MethodOfCaller">addEndpointInternal</td>
<td class="FileOfCaller">ServerWebSocketContainer.java</td>
<td class="LineOfCaller">647</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,567</td>
<td class="Message">flow info loaded from class config with el,class=com.yomahub.liteflow.parser.sql.SQLXmlELParser</td>
<td class="MethodOfCaller">info</td>
<td class="FileOfCaller">LFLog.java</td>
<td class="LineOfCaller">193</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,590</td>
<td class="Message">query sql: select id, application_name, chain from airag_flow where status = &#39;enable&#39; and chain is not null</td>
<td class="MethodOfCaller">info</td>
<td class="FileOfCaller">LFLog.java</td>
<td class="LineOfCaller">186</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,611</td>
<td class="Message">use dataSourceName[dataSource],has found liteflow config</td>
<td class="MethodOfCaller">getConn</td>
<td class="FileOfCaller">LiteFlowJdbcUtil.java</td>
<td class="LineOfCaller">43</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,878</td>
<td class="Message">starting server: Undertow - 2.3.18.Final</td>
<td class="MethodOfCaller">start</td>
<td class="FileOfCaller">Undertow.java</td>
<td class="LineOfCaller">120</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,886</td>
<td class="Message">XNIO version 3.8.16.Final</td>
<td class="MethodOfCaller">&lt;clinit&gt;</td>
<td class="FileOfCaller">Xnio.java</td>
<td class="LineOfCaller">95</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,896</td>
<td class="Message">XNIO NIO Implementation Version 3.8.16.Final</td>
<td class="MethodOfCaller">&lt;clinit&gt;</td>
<td class="FileOfCaller">NioXnio.java</td>
<td class="LineOfCaller">58</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,924</td>
<td class="Message">JBoss Threads version 3.5.0.Final</td>
<td class="MethodOfCaller">&lt;clinit&gt;</td>
<td class="FileOfCaller">Version.java</td>
<td class="LineOfCaller">55</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,959</td>
<td class="Message">Initializing Spring DispatcherServlet &#39;dispatcherServlet&#39;</td>
<td class="MethodOfCaller">log</td>
<td class="FileOfCaller">ServletContextImpl.java</td>
<td class="LineOfCaller">372</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,960</td>
<td class="Message">Initializing Servlet &#39;dispatcherServlet&#39;</td>
<td class="MethodOfCaller">initServletBean</td>
<td class="FileOfCaller">FrameworkServlet.java</td>
<td class="LineOfCaller">532</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,960</td>
<td class="Message">Undertow started on port 8080 (http) with context path &#39;/jeecg-boot&#39;</td>
<td class="MethodOfCaller">start</td>
<td class="FileOfCaller">UndertowWebServer.java</td>
<td class="LineOfCaller">121</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:23,962</td>
<td class="Message">Completed initialization in 2 ms</td>
<td class="MethodOfCaller">initServletBean</td>
<td class="FileOfCaller">FrameworkServlet.java</td>
<td class="LineOfCaller">554</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:24,259</td>
<td class="Message">Will start Quartz Scheduler [MyScheduler] in 1 seconds</td>
<td class="MethodOfCaller">startScheduler</td>
<td class="FileOfCaller">SchedulerFactoryBean.java</td>
<td class="LineOfCaller">735</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:24,266</td>
<td class="Message">Started JeecgSystemApplication in 12.683 seconds (process running for 13.094)</td>
<td class="MethodOfCaller">logStarted</td>
<td class="FileOfCaller">StartupInfoLogger.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:24,269</td>
<td class="Message"> Init Code Generate Template [ 检测如果是JAR启动，Copy模板到config目录 ] </td>
<td class="MethodOfCaller">onApplicationEvent</td>
<td class="FileOfCaller">CodeTemplateInitListener.java</td>
<td class="LineOfCaller">30</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:24,285</td>
<td class="Message"> Init Code Generate Template completed in 16 ms</td>
<td class="MethodOfCaller">onApplicationEvent</td>
<td class="FileOfCaller">CodeTemplateInitListener.java</td>
<td class="LineOfCaller">33</td>
</tr>

<tr class="warn even">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 22:36:24,286</td>
<td class="Message">A MeterFilter is being configured after a Meter has been registered to this registry. All MeterFilters should be configured before any Meters are registered. If that is not possible or you have a use case where it should be allowed, let the Micrometer maintainers know at https://github.com/micrometer-metrics/micrometer/issues/4920. Enable DEBUG level logging on this logger to see a stack trace of the call configuring this MeterFilter.</td>
<td class="MethodOfCaller">logWarningAboutLateFilter</td>
<td class="FileOfCaller">MeterRegistry.java</td>
<td class="LineOfCaller">881</td>
</tr>

<tr class="warn odd">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 22:36:24,287</td>
<td class="Message">A MeterFilter is being configured after a Meter has been registered to this registry. All MeterFilters should be configured before any Meters are registered. If that is not possible or you have a use case where it should be allowed, let the Micrometer maintainers know at https://github.com/micrometer-metrics/micrometer/issues/4920. Enable DEBUG level logging on this logger to see a stack trace of the call configuring this MeterFilter.</td>
<td class="MethodOfCaller">logWarningAboutLateFilter</td>
<td class="FileOfCaller">MeterRegistry.java</td>
<td class="LineOfCaller">881</td>
</tr>

<tr class="warn even">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 22:36:24,287</td>
<td class="Message">A MeterFilter is being configured after a Meter has been registered to this registry. All MeterFilters should be configured before any Meters are registered. If that is not possible or you have a use case where it should be allowed, let the Micrometer maintainers know at https://github.com/micrometer-metrics/micrometer/issues/4920. Enable DEBUG level logging on this logger to see a stack trace of the call configuring this MeterFilter.</td>
<td class="MethodOfCaller">logWarningAboutLateFilter</td>
<td class="FileOfCaller">MeterRegistry.java</td>
<td class="LineOfCaller">881</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:24,307</td>
<td class="Message">
----------------------------------------------------------
	Application Jeecg-Boot is running! Access URLs:
	Local: 		http://localhost:8080/jeecg-boot
	External: 	http://192.168.1.112:8080/jeecg-boot/doc.html
	Swagger文档: 	http://192.168.1.112:8080/jeecg-boot/doc.html
----------------------------------------------------------</td>
<td class="MethodOfCaller">main</td>
<td class="FileOfCaller">JeecgSystemApplication.java</td>
<td class="LineOfCaller">47</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:25,265</td>
<td class="Message">Starting Quartz Scheduler now, after delay of 1 seconds</td>
<td class="MethodOfCaller">lambda$startScheduler$0</td>
<td class="FileOfCaller">SchedulerFactoryBean.java</td>
<td class="LineOfCaller">749</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:25,285</td>
<td class="Message">ClusterManager: detected 1 failed or restarted instances.</td>
<td class="MethodOfCaller">logWarnIfNonZero</td>
<td class="FileOfCaller">JobStoreSupport.java</td>
<td class="LineOfCaller">3644</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:25,286</td>
<td class="Message">ClusterManager: Scanning for instance &quot;192.168.1.1121755180808207&quot;&#39;s failed in-progress jobs.</td>
<td class="MethodOfCaller">clusterRecover</td>
<td class="FileOfCaller">JobStoreSupport.java</td>
<td class="LineOfCaller">3503</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:25,295</td>
<td class="Message">Scheduler MyScheduler_$_192.168.1.1121755182179197 started.</td>
<td class="MethodOfCaller">start</td>
<td class="FileOfCaller">QuartzScheduler.java</td>
<td class="LineOfCaller">547</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:35,358</td>
<td class="Message">-----查询近两个月收到的未读通知-----，近2月的第一天：2025-07-01 00:00:00</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">388</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:35,376</td>
<td class="Message">begin 获取用户近2个月的系统公告 (通知)23毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">403</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:36:35,385</td>
<td class="Message">end 获取用户2个月的系统公告 (系统消息)32毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">411</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:42:15,190</td>
<td class="Message">-------通过数据库读取用户拥有的角色Rules------username： admin,Roles size: 2</td>
<td class="MethodOfCaller">getUserRoleSet</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1125</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:42:18,890</td>
<td class="Message">-------通过数据库读取用户拥有的角色Rules------username： admin,Roles size: 2</td>
<td class="MethodOfCaller">getUserRoleSet</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1125</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:42:23,295</td>
<td class="Message">-------通过数据库读取用户拥有的角色Rules------username： admin,Roles size: 2</td>
<td class="MethodOfCaller">getUserRoleSet</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1125</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:42:34,614</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:42:34,616</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:42:34,664</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:53:00,464</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:53:00,468</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:53:00,491</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:53:00,525</td>
<td class="Message">-----查询近两个月收到的未读通知-----，近2月的第一天：2025-07-01 00:00:00</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">388</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:53:00,543</td>
<td class="Message">begin 获取用户近2个月的系统公告 (通知)18毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">403</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 22:53:00,560</td>
<td class="Message">end 获取用户2个月的系统公告 (系统消息)35毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">411</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:40,859</td>
<td class="Message">======获取全部菜单数据=====耗时:34毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:49,057</td>
<td class="Message">单字段排序规则&gt;&gt; column:id,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:50,246</td>
<td class="Message">-------通过数据库读取用户拥有的角色Rules------useId： e9ca23d68d884d4ebb19d07889727dae,Roles size: 2</td>
<td class="MethodOfCaller">getUserRoleSetById</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1139</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:50,276</td>
<td class="Message">-------通过数据库读取用户拥有的权限Perms------userId： e9ca23d68d884d4ebb19d07889727dae,Perms size: 168</td>
<td class="MethodOfCaller">getUserPermissionSet</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1170</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:50,277</td>
<td class="Message">===============Shiro权限认证成功==============</td>
<td class="MethodOfCaller">doGetAuthorizationInfo</td>
<td class="FileOfCaller">ShiroRealm.java</td>
<td class="LineOfCaller">86</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:50,284</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:50,330</td>
<td class="Message">字典拼接的查询SQL：select name,id from sys_position</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:50,335</td>
<td class="Message">获取select sql信息 ：{sys_position=SelectSqlInfo{fromTableName=&#39;sys_position&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:50,345</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:50,345</td>
<td class="Message">checkWhiteList tableName: sys_position</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:50,346</td>
<td class="Message">白名单校验：查询表&quot;sys_position&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:07:50,347</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_position&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:02,963</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/loadDict/sys_tenant,name,id</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:02,968</td>
<td class="Message"> pathVariable: sys_tenant,name,id</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:02,968</td>
<td class="Message"> pathVariable decode: sys_tenant,name,id</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">56</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:02,972</td>
<td class="Message">Param paramsJsonStr : {&quot;keyword&quot;:&quot;&quot;,&quot;pageNo&quot;:&quot;1&quot;,&quot;pageSize&quot;:&quot;10&quot;,&quot;x-path-variable&quot;:&quot;sys_tenant,name,id&quot;}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:02,979</td>
<td class="Message">Param Sign : AAB8C24C54FCDC4EB02B9876ECDD40E8</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:02,992</td>
<td class="Message"> 加载字典表数据,加载关键字: </td>
<td class="MethodOfCaller">loadDict</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">228</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:02,993</td>
<td class="Message">字典拼接的查询SQL：select name,id from sys_tenant</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:02,996</td>
<td class="Message">获取select sql信息 ：{sys_tenant=SelectSqlInfo{fromTableName=&#39;sys_tenant&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,002</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,003</td>
<td class="Message">checkWhiteList tableName: sys_tenant</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,003</td>
<td class="Message">白名单校验：查询表&quot;sys_tenant&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,003</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_tenant&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,015</td>
<td class="Message">Result(success=true, message=, code=0, result=[DictModel(value=1000, text=北京国炬信息技术有限公司, color=null, jsonObject=null), DictModel(value=1001, text=北京敲敲云科技有限公司, color=null, jsonObject=null), DictModel(value=1002, text=111, color=null, jsonObject=null)], timestamp=1755184082993, onlTable=null)</td>
<td class="MethodOfCaller">loadDict</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">238</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,126</td>
<td class="Message">字典拼接的查询SQL：select email from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,126</td>
<td class="Message">字典拼接的查询SQL：select work_no from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,127</td>
<td class="Message">字典拼接的查询SQL：select username from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,128</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[username], realSelectFields=[username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,128</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[work_no], realSelectFields=[work_no], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,128</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[email], realSelectFields=[email], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,129</td>
<td class="Message">字典拼接的查询SQL：select phone from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,131</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[phone], realSelectFields=[phone], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,136</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,136</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,136</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,137</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,137</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,137</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [work_no] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,138</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,138</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,138</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [email] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,139</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,139</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:03,139</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [phone] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,839</td>
<td class="Message">字典拼接的查询SQL：select username from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,839</td>
<td class="Message">字典拼接的查询SQL：select email from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,839</td>
<td class="Message">字典拼接的查询SQL：select work_no from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,840</td>
<td class="Message">字典拼接的查询SQL：select phone from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,842</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[email], realSelectFields=[email], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,842</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[username], realSelectFields=[username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,843</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[phone], realSelectFields=[phone], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,843</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[work_no], realSelectFields=[work_no], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,851</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,851</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,851</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,852</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,852</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,852</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [work_no] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,852</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [email] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,852</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,852</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,853</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,853</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:20,853</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [phone] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:21,100</td>
<td class="Message">加密操作，Aspect程序耗时：0ms</td>
<td class="MethodOfCaller">around</td>
<td class="FileOfCaller">SensitiveDataAspect.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:21,111</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,844</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/loadDict/sys_tenant,name,id</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,844</td>
<td class="Message"> pathVariable: sys_tenant,name,id</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,844</td>
<td class="Message"> pathVariable decode: sys_tenant,name,id</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">56</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,844</td>
<td class="Message">Param paramsJsonStr : {&quot;keyword&quot;:&quot;&quot;,&quot;pageNo&quot;:&quot;1&quot;,&quot;pageSize&quot;:&quot;10&quot;,&quot;x-path-variable&quot;:&quot;sys_tenant,name,id&quot;}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,845</td>
<td class="Message">Param Sign : AAB8C24C54FCDC4EB02B9876ECDD40E8</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,845</td>
<td class="Message"> 加载字典表数据,加载关键字: </td>
<td class="MethodOfCaller">loadDict</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">228</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,846</td>
<td class="Message">字典拼接的查询SQL：select name,id from sys_tenant</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,847</td>
<td class="Message">获取select sql信息 ：{sys_tenant=SelectSqlInfo{fromTableName=&#39;sys_tenant&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,851</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,852</td>
<td class="Message">checkWhiteList tableName: sys_tenant</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,852</td>
<td class="Message">白名单校验：查询表&quot;sys_tenant&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,853</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_tenant&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,866</td>
<td class="Message">Result(success=true, message=, code=0, result=[DictModel(value=1000, text=北京国炬信息技术有限公司, color=null, jsonObject=null), DictModel(value=1001, text=北京敲敲云科技有限公司, color=null, jsonObject=null), DictModel(value=1002, text=111, color=null, jsonObject=null)], timestamp=1755184104845, onlTable=null)</td>
<td class="MethodOfCaller">loadDict</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">238</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,950</td>
<td class="Message">字典拼接的查询SQL：select email from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,951</td>
<td class="Message">字典拼接的查询SQL：select username from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,951</td>
<td class="Message">字典拼接的查询SQL：select work_no from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,953</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[email], realSelectFields=[email], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,954</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[username], realSelectFields=[username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,954</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[work_no], realSelectFields=[work_no], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,956</td>
<td class="Message">字典拼接的查询SQL：select phone from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,957</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[phone], realSelectFields=[phone], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,960</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,960</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,960</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [email] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,962</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,962</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,963</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,963</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,963</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,964</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,964</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [work_no] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,964</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:08:24,964</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [phone] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:09:03,650</td>
<td class="Message">单字段排序规则&gt;&gt; column:id,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:09:23,584</td>
<td class="Message">--验证角色编码是否唯一---id:1501570619841810433--roleCode:vue3</td>
<td class="MethodOfCaller">checkUsername</td>
<td class="FileOfCaller">SysRoleController.java</td>
<td class="LineOfCaller">350</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:10:49,153</td>
<td class="Message">======获取全部菜单数据=====耗时:13毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:10:49,773</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:10:49,773</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:10:49,785</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:10:57,364</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:28,479</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:33,654</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:36,462</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:36,484</td>
<td class="Message">字典拼接的查询SQL：select realname,username from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:36,490</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[realname, username], realSelectFields=[realname, username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:36,496</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:36,497</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:36,498</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [realname, username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:36,498</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;&#39;, fields=[realname, username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,805</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/loadDict/sys_tenant,name,id</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,807</td>
<td class="Message"> pathVariable: sys_tenant,name,id</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,807</td>
<td class="Message"> pathVariable decode: sys_tenant,name,id</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">56</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,808</td>
<td class="Message">Param paramsJsonStr : {&quot;keyword&quot;:&quot;&quot;,&quot;pageNo&quot;:&quot;1&quot;,&quot;pageSize&quot;:&quot;10&quot;,&quot;x-path-variable&quot;:&quot;sys_tenant,name,id&quot;}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,808</td>
<td class="Message">Param Sign : AAB8C24C54FCDC4EB02B9876ECDD40E8</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,809</td>
<td class="Message"> 加载字典表数据,加载关键字: </td>
<td class="MethodOfCaller">loadDict</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">228</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,809</td>
<td class="Message">字典拼接的查询SQL：select name,id from sys_tenant</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,811</td>
<td class="Message">获取select sql信息 ：{sys_tenant=SelectSqlInfo{fromTableName=&#39;sys_tenant&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,815</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,816</td>
<td class="Message">checkWhiteList tableName: sys_tenant</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,816</td>
<td class="Message">白名单校验：查询表&quot;sys_tenant&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,817</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_tenant&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,820</td>
<td class="Message">Result(success=true, message=, code=0, result=[DictModel(value=1000, text=北京国炬信息技术有限公司, color=null, jsonObject=null), DictModel(value=1001, text=北京敲敲云科技有限公司, color=null, jsonObject=null), DictModel(value=1002, text=111, color=null, jsonObject=null)], timestamp=1755184310809, onlTable=null)</td>
<td class="MethodOfCaller">loadDict</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">238</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,911</td>
<td class="Message">字典拼接的查询SQL：select phone from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,911</td>
<td class="Message">字典拼接的查询SQL：select username from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,912</td>
<td class="Message">字典拼接的查询SQL：select work_no from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,913</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[username], realSelectFields=[username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,913</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[phone], realSelectFields=[phone], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,914</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[work_no], realSelectFields=[work_no], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,915</td>
<td class="Message">字典拼接的查询SQL：select email from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,919</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[email], realSelectFields=[email], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,920</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,921</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,921</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,921</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,922</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,922</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [phone] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,922</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,923</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,924</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [work_no] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,925</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,926</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:11:50,927</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [email] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:12:07,900</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:56,111</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,361</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/loadTreeData</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,361</td>
<td class="Message">Param paramsJsonStr : {&quot;code&quot;:&quot;id&quot;,&quot;condition&quot;:&quot;&quot;,&quot;converIsLeafVal&quot;:&quot;1&quot;,&quot;hasChildField&quot;:&quot;&quot;,&quot;pid&quot;:&quot;&quot;,&quot;pidField&quot;:&quot;parent_id&quot;,&quot;tableName&quot;:&quot;sys_permission&quot;,&quot;text&quot;:&quot;name&quot;}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,362</td>
<td class="Message">Param Sign : 96F6E21C897B4A3A2741D7F86E153372</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,363</td>
<td class="Message">字典拼接的查询SQL：select name,id from sys_permission</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,366</td>
<td class="Message">获取select sql信息 ：{sys_permission=SelectSqlInfo{fromTableName=&#39;sys_permission&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,371</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,371</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/loadDictItem/sys_permission,name,id</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,371</td>
<td class="Message">checkWhiteList tableName: sys_permission</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,371</td>
<td class="Message">白名单校验：查询表&quot;sys_permission&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,371</td>
<td class="Message"> pathVariable: sys_permission,name,id</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,371</td>
<td class="Message"> pathVariable decode: sys_permission,name,id</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">56</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,372</td>
<td class="Message">Param paramsJsonStr : {&quot;key&quot;:&quot;1473927410093187073,1473955758466981890,1542385335362383873,1554384900763729922&quot;,&quot;x-path-variable&quot;:&quot;sys_permission,name,id&quot;}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,372</td>
<td class="Message">Param Sign : 4F68501859E07BC77766F1C85E3E18AE</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,371</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_permission&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,373</td>
<td class="Message">字典拼接的查询SQL：select name,id from sys_permission</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,375</td>
<td class="Message">获取select sql信息 ：{sys_permission=SelectSqlInfo{fromTableName=&#39;sys_permission&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,379</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,379</td>
<td class="Message">checkWhiteList tableName: sys_permission</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,379</td>
<td class="Message">白名单校验：查询表&quot;sys_permission&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,379</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_permission&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:14:58,383</td>
<td class="Message">Result(success=true, message=, code=0, result=[大屏和仪表盘, 删除仪表盘, 模板设置], timestamp=1755184498372, onlTable=null)</td>
<td class="MethodOfCaller">loadDictItem</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">312</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:07,674</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:09,481</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:11,762</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:12,465</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,075</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,137</td>
<td class="Message">字典拼接的查询SQL：select name,id from airag_flow where status = &#39;enable&#39; </td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,139</td>
<td class="Message">获取select sql信息 ：{airag_flow=SelectSqlInfo{fromTableName=&#39;airag_flow&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,141</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,142</td>
<td class="Message">checkWhiteList tableName: airag_flow</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,142</td>
<td class="Message">白名单校验：查询表&quot;airag_flow&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,142</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;airag_flow&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,156</td>
<td class="Message">字典拼接的查询SQL：select name,id from airag_model where model_type = &#39;LLM&#39; </td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,157</td>
<td class="Message">获取select sql信息 ：{airag_model=SelectSqlInfo{fromTableName=&#39;airag_model&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,160</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,160</td>
<td class="Message">checkWhiteList tableName: airag_model</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,160</td>
<td class="Message">白名单校验：查询表&quot;airag_model&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:18,160</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;airag_model&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:23,125</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:29,636</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:29,947</td>
<td class="Message">======获取全部菜单数据=====耗时:17毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:33,839</td>
<td class="Message">单字段排序规则&gt;&gt; column:id,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:34,980</td>
<td class="Message">======获取全部菜单数据=====耗时:13毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:35,878</td>
<td class="Message">单字段排序规则&gt;&gt; column:id,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:38,763</td>
<td class="Message">======获取全部菜单数据=====耗时:44毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:46,415</td>
<td class="Message">======获取全部菜单数据=====耗时:13毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:48,248</td>
<td class="Message">单字段排序规则&gt;&gt; column:id,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:49,259</td>
<td class="Message">======获取全部菜单数据=====耗时:38毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:15:50,671</td>
<td class="Message">单字段排序规则&gt;&gt; column:id,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:02,111</td>
<td class="Message">======获取全部菜单数据=====耗时:40毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:07,922</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,027</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/getDictItems/sys_user,username,username</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,028</td>
<td class="Message"> pathVariable: sys_user,username,username</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,028</td>
<td class="Message"> pathVariable decode: sys_user,username,username</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">56</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,028</td>
<td class="Message">Param paramsJsonStr : {&quot;x-path-variable&quot;:&quot;sys_user,username,username&quot;}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,028</td>
<td class="Message">Param Sign : 224A247FA95939B8EBD9C110A144F28A</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,029</td>
<td class="Message"> dictCode : sys_user,username,username</td>
<td class="MethodOfCaller">getDictItems</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">185</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,029</td>
<td class="Message">字典拼接的查询SQL：select username,username from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,030</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[username], realSelectFields=[username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,033</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,033</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,033</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,034</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;&#39;, fields=[username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,043</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,091</td>
<td class="Message">字典拼接的查询SQL：select username,id from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,101</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[id, username], realSelectFields=[id, username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,105</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,105</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,106</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [id, username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:10,106</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;&#39;, fields=[id, username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:18,607</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:22,680</td>
<td class="Message">字典拼接的查询SQL：select template_code from sys_sms_template</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:22,681</td>
<td class="Message">获取select sql信息 ：{sys_sms_template=SelectSqlInfo{fromTableName=&#39;sys_sms_template&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[template_code], realSelectFields=[template_code], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:22,684</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:22,684</td>
<td class="Message">checkWhiteList tableName: sys_sms_template</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:22,684</td>
<td class="Message">白名单校验：查询表&quot;sys_sms_template&quot;，查询字段 [template_code] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:47,875</td>
<td class="Message"> path = /online/cgreport/api/getColumnsAndData/1256627801873821698</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:47,876</td>
<td class="Message">获取的菜单地址= [/online/cgreport/api/getColumnsAndData/1256627801873821698]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:47,964</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_log&#39;, alias=&#39;sys_log&#39;, fields=[count(*), date_format(create_time, &#39;%y-%m-%d&#39;)], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:47,975</td>
<td class="Message">报表查询sql=&gt;
select * from (select DATE_FORMAT(create_time,  &#39;%Y-%m-%d&#39;) as date,count(*) as num from sys_log group by DATE_FORMAT(create_time, &#39;%Y-%m-%d&#39;)) jeecg_rp_temp </td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">202</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:47,976</td>
<td class="Message">报表查询sqlParam=&gt;
{}</td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">203</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:48,082</td>
<td class="Message"> path = /online/cgreport/api/getColumnsAndData/1256627801873821698</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:48,082</td>
<td class="Message">获取的菜单地址= [/online/cgreport/api/getColumnsAndData/1256627801873821698]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:48,108</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_log&#39;, alias=&#39;sys_log&#39;, fields=[count(*), date_format(create_time, &#39;%y-%m-%d&#39;)], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:48,115</td>
<td class="Message">报表查询sql=&gt;
select * from (select DATE_FORMAT(create_time,  &#39;%Y-%m-%d&#39;) as date,count(*) as num from sys_log group by DATE_FORMAT(create_time, &#39;%Y-%m-%d&#39;)) jeecg_rp_temp </td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">202</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:48,115</td>
<td class="Message">报表查询sqlParam=&gt;
{}</td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">203</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:52,914</td>
<td class="Message"> path = /online/cgreport/api/getColumnsAndData/1256627801873821698</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:52,914</td>
<td class="Message">获取的菜单地址= [/online/cgreport/api/getColumnsAndData/1256627801873821698]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:52,934</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_log&#39;, alias=&#39;sys_log&#39;, fields=[count(*), date_format(create_time, &#39;%y-%m-%d&#39;)], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:52,941</td>
<td class="Message">报表查询sql=&gt;
select * from (select DATE_FORMAT(create_time,  &#39;%Y-%m-%d&#39;) as date,count(*) as num from sys_log group by DATE_FORMAT(create_time, &#39;%Y-%m-%d&#39;)) jeecg_rp_temp </td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">202</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:16:52,941</td>
<td class="Message">报表查询sqlParam=&gt;
{}</td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">203</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,574</td>
<td class="Message">字典拼接的查询SQL：select role_name,role_code from sys_role</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,577</td>
<td class="Message">获取select sql信息 ：{sys_role=SelectSqlInfo{fromTableName=&#39;sys_role&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[role_name, role_code], realSelectFields=[role_name, role_code], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,582</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,582</td>
<td class="Message">checkWhiteList tableName: sys_role</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,583</td>
<td class="Message">白名单校验：查询表&quot;sys_role&quot;，查询字段 [role_name, role_code] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,583</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_role&#39;, alias=&#39;&#39;, fields=[role_name, role_code], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,585</td>
<td class="Message">字典拼接的查询SQL：select realname,username from sys_user where username like &#39;a%&#39;</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,586</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[realname, username], realSelectFields=[realname, username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,589</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,590</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,590</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [realname, username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,590</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;&#39;, fields=[realname, username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,615</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/loadDict/sys_role,role_name,role_code</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,615</td>
<td class="Message"> pathVariable: sys_role,role_name,role_code</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,615</td>
<td class="Message"> pathVariable decode: sys_role,role_name,role_code</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">56</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,616</td>
<td class="Message">Param paramsJsonStr : {&quot;keyword&quot;:&quot;&quot;,&quot;pageNo&quot;:&quot;1&quot;,&quot;pageSize&quot;:&quot;10&quot;,&quot;x-path-variable&quot;:&quot;sys_role,role_name,role_code&quot;}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,616</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/getDictItems/sex</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,616</td>
<td class="Message">Param Sign : A94389BD884D94133E492535C3E5F982</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,616</td>
<td class="Message">Param paramsJsonStr : {}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,617</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/loadDict/sys_user%20where%20username%20like%20&#39;a%25&#39;,realname,username</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,617</td>
<td class="Message">Param Sign : E19D6243CB1945AB4F7202A1B00F77D5</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,617</td>
<td class="Message"> 加载字典表数据,加载关键字: </td>
<td class="MethodOfCaller">loadDict</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">228</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,617</td>
<td class="Message"> pathVariable: sys_user%20where%20username%20like%20&#39;a%25&#39;,realname,username</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,617</td>
<td class="Message"> dictCode : sex</td>
<td class="MethodOfCaller">getDictItems</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">185</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,617</td>
<td class="Message"> pathVariable decode: sys_user where username like &#39;a%&#39;,realname,username</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">56</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,617</td>
<td class="Message">字典拼接的查询SQL：select role_name,role_code from sys_role</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,617</td>
<td class="Message">Param paramsJsonStr : {&quot;keyword&quot;:&quot;&quot;,&quot;pageNo&quot;:&quot;1&quot;,&quot;pageSize&quot;:&quot;10&quot;,&quot;x-path-variable&quot;:&quot;sys_user where username like &#39;a%&#39;,realname,username&quot;}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,617</td>
<td class="Message">Param Sign : 68A1FAA763F3656BC0170DAF169B396C</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,618</td>
<td class="Message"> 加载字典表数据,加载关键字: </td>
<td class="MethodOfCaller">loadDict</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">228</td>
</tr>

<tr class="warn even">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 23:17:03,618</td>
<td class="Message">URLDecoder: Illegal hex characters in escape (%) pattern - Error at index 0 in: &quot;&#39;,&quot;</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">103</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,618</td>
<td class="Message">字典拼接的查询SQL：select realname,username from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,620</td>
<td class="Message">获取select sql信息 ：{sys_role=SelectSqlInfo{fromTableName=&#39;sys_role&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[role_name, role_code], realSelectFields=[role_name, role_code], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,622</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[realname, username], realSelectFields=[realname, username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,627</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,627</td>
<td class="Message">checkWhiteList tableName: sys_role</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,627</td>
<td class="Message">白名单校验：查询表&quot;sys_role&quot;，查询字段 [role_name, role_code] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,629</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_role&#39;, alias=&#39;&#39;, fields=[role_name, role_code], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,630</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,630</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,630</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [realname, username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,631</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;&#39;, fields=[realname, username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,632</td>
<td class="Message">Result(success=true, message=, code=0, result=[DictModel(value=dbadeveloper, text=数据开发角色, color=null, jsonObject=null), DictModel(value=lowdeveloper, text=低代码开发角色, color=null, jsonObject=null), DictModel(value=vue3, text=Vue3全角色, color=null, jsonObject=null), DictModel(value=test, text=临时角色, color=null, jsonObject=null), DictModel(value=admin, text=管理员, color=null, jsonObject=null)], timestamp=1755184623617, onlTable=null)</td>
<td class="MethodOfCaller">loadDict</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">238</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,637</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/getDictItems/sex</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,637</td>
<td class="Message">Param paramsJsonStr : {}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,637</td>
<td class="Message">Result(success=true, message=, code=0, result=[DictModel(value=admin, text=管理员, color=null, jsonObject=null)], timestamp=1755184623618, onlTable=null)</td>
<td class="MethodOfCaller">loadDict</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">238</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,637</td>
<td class="Message">Param Sign : E19D6243CB1945AB4F7202A1B00F77D5</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,638</td>
<td class="Message"> dictCode : sex</td>
<td class="MethodOfCaller">getDictItems</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">185</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,647</td>
<td class="Message"> path = /online/cgform/api/getData/d35109c3632c4952a19ecc094943dd71</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,647</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/d35109c3632c4952a19ecc094943dd71]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,678</td>
<td class="Message"> path = /online/cgform/api/getData/d35109c3632c4952a19ecc094943dd71</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,678</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/d35109c3632c4952a19ecc094943dd71]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,753</td>
<td class="Message"> path = /online/cgform/api/getData/d35109c3632c4952a19ecc094943dd71</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,754</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/d35109c3632c4952a19ecc094943dd71]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,812</td>
<td class="Message">suffix:jpg</td>
<td class="MethodOfCaller">checkDownloadFileType</td>
<td class="FileOfCaller">SsrfFileTypeFilter.java</td>
<td class="LineOfCaller">152</td>
</tr>

<tr class="warn odd">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 23:17:03,813</td>
<td class="Message">文件[temp/11_1654356229294.jpg]不存在..</td>
<td class="MethodOfCaller">view</td>
<td class="FileOfCaller">CommonController.java</td>
<td class="LineOfCaller">232</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:03,934</td>
<td class="Message">suffix:jpg</td>
<td class="MethodOfCaller">checkDownloadFileType</td>
<td class="FileOfCaller">SsrfFileTypeFilter.java</td>
<td class="LineOfCaller">152</td>
</tr>

<tr class="warn odd">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 23:17:03,934</td>
<td class="Message">文件[temp/11_1654356229294.jpg]不存在..</td>
<td class="MethodOfCaller">view</td>
<td class="FileOfCaller">CommonController.java</td>
<td class="LineOfCaller">232</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:04,097</td>
<td class="Message">suffix:jpg</td>
<td class="MethodOfCaller">checkDownloadFileType</td>
<td class="FileOfCaller">SsrfFileTypeFilter.java</td>
<td class="LineOfCaller">152</td>
</tr>

<tr class="warn odd">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 23:17:04,098</td>
<td class="Message">文件[temp/11_1654356229294.jpg]不存在..</td>
<td class="MethodOfCaller">view</td>
<td class="FileOfCaller">CommonController.java</td>
<td class="LineOfCaller">232</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:10,377</td>
<td class="Message">-------通过数据库读取用户拥有的角色Rules------username： admin,Roles size: 2</td>
<td class="MethodOfCaller">getUserRoleSet</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1125</td>
</tr>

<tr class="error odd">
<td class="Level">ERROR</td>
<td class="Date">2025-08-14 23:17:20,285</td>
<td class="Message">No static resource bigscreen/template1/css/images/blank.gif.</td>
<td class="MethodOfCaller">handleException</td>
<td class="FileOfCaller">JeecgBootExceptionHandler.java</td>
<td class="LineOfCaller">124</td>
</tr>
<tr><td class="Exception" colspan="6">org.springframework.web.servlet.resource.NoResourceFoundException: No static resource bigscreen/template1/css/images/blank.gif.
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.resource.ResourceHttpRequestHandler.handleRequest(ResourceHttpRequestHandler.java:585)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:52)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:527)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.websockets.jsr.JsrWebSocketFilter.doFilter(JsrWebSocketFilter.java:172)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.resource.ResourceUrlEncodingFilter.doFilter(ResourceUrlEncodingFilter.java:66)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.support.jakarta.WebStatFilter.doFilter(WebStatFilter.java:73)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.actuate.web.exchanges.servlet.HttpExchangesFilter.doFilterInternal(HttpExchangesFilter.java:89)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:65)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:109)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:138)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:70)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:109)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:138)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:70)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:463)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.lambda$doFilterInternal$0(AbstractShiroFilter.java:378)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:91)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:84)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:389)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:376)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:114)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:276)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:256)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.handleRequest(ServletInitialHandler.java:176)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.modules.monitor.actuator.undertow.CustomUndertowMetricsHandler.lambda$4(CustomUndertowMetricsHandler.java:87)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.Connectors.executeRootHandler(Connectors.java:395)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:861)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.lang.Thread.run(Thread.java:840)
</td></tr>
<tr class="error even">
<td class="Level">ERROR</td>
<td class="Date">2025-08-14 23:17:20,287</td>
<td class="Message">No static resource bigscreen/template1/css/images/panel_tools.png.</td>
<td class="MethodOfCaller">handleException</td>
<td class="FileOfCaller">JeecgBootExceptionHandler.java</td>
<td class="LineOfCaller">124</td>
</tr>
<tr><td class="Exception" colspan="6">org.springframework.web.servlet.resource.NoResourceFoundException: No static resource bigscreen/template1/css/images/panel_tools.png.
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.resource.ResourceHttpRequestHandler.handleRequest(ResourceHttpRequestHandler.java:585)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:52)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:527)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.websockets.jsr.JsrWebSocketFilter.doFilter(JsrWebSocketFilter.java:172)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.resource.ResourceUrlEncodingFilter.doFilter(ResourceUrlEncodingFilter.java:66)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.support.jakarta.WebStatFilter.doFilter(WebStatFilter.java:73)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.actuate.web.exchanges.servlet.HttpExchangesFilter.doFilterInternal(HttpExchangesFilter.java:89)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:65)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:109)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:138)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:70)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:109)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:138)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:70)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:463)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.lambda$doFilterInternal$0(AbstractShiroFilter.java:378)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:91)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:84)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:389)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:376)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:114)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:276)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:256)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.handleRequest(ServletInitialHandler.java:176)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.modules.monitor.actuator.undertow.CustomUndertowMetricsHandler.lambda$4(CustomUndertowMetricsHandler.java:87)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.Connectors.executeRootHandler(Connectors.java:395)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:861)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.lang.Thread.run(Thread.java:840)
</td></tr>
<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:55,145</td>
<td class="Message"> path = /online/cgreport/api/getColumnsAndData/1590154651759259649</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:55,146</td>
<td class="Message">获取的菜单地址= [/online/cgreport/api/getColumnsAndData/1590154651759259649]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:55,164</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;demo&#39;, alias=&#39;demo&#39;, fields=[], all=true}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:55,171</td>
<td class="Message">报表查询sql=&gt;
select * from (select * from demo where sex = #{param._sql_param_sex}) jeecg_rp_temp </td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">202</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:55,172</td>
<td class="Message">报表查询sqlParam=&gt;
{_sql_param_sex=2}</td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">203</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:55,299</td>
<td class="Message"> path = /online/cgreport/api/getColumnsAndData/1590154651759259649?sex=1</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:55,299</td>
<td class="Message">获取的菜单地址= [/online/cgreport/api/getColumnsAndData/1590154651759259649?sex=1]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:55,320</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;demo&#39;, alias=&#39;demo&#39;, fields=[], all=true}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:55,329</td>
<td class="Message">报表查询sql=&gt;
select * from (select * from demo where sex = #{param._sql_param_sex}) jeecg_rp_temp </td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">202</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:17:55,329</td>
<td class="Message">报表查询sqlParam=&gt;
{_sql_param_sex=1}</td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">203</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:20:59,281</td>
<td class="Message">-----查询近两个月收到的未读通知-----，近2月的第一天：2025-07-01 00:00:00</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">388</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:20:59,295</td>
<td class="Message">begin 获取用户近2个月的系统公告 (通知)15毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">403</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:20:59,306</td>
<td class="Message">end 获取用户2个月的系统公告 (系统消息)26毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">411</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:00,031</td>
<td class="Message">-----查询近两个月收到的未读通知-----，近2月的第一天：2025-07-01 00:00:00</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">388</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:00,039</td>
<td class="Message">begin 获取用户近2个月的系统公告 (通知)9毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">403</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:00,049</td>
<td class="Message">end 获取用户2个月的系统公告 (系统消息)19毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">411</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:20,592</td>
<td class="Message">-----查询近两个月收到的未读通知-----，近2月的第一天：2025-07-01 00:00:00</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">388</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:20,602</td>
<td class="Message">begin 获取用户近2个月的系统公告 (通知)10毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">403</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:20,610</td>
<td class="Message">end 获取用户2个月的系统公告 (系统消息)18毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">411</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:52,337</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:52,353</td>
<td class="Message">字典拼接的查询SQL：select realname,username from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:52,355</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[realname, username], realSelectFields=[realname, username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:52,358</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:52,359</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:52,359</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [realname, username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:22:52,359</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;&#39;, fields=[realname, username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="error odd">
<td class="Level">ERROR</td>
<td class="Date">2025-08-14 23:22:55,910</td>
<td class="Message">测试模型连接失败</td>
<td class="MethodOfCaller">test</td>
<td class="FileOfCaller">AiragModelController.java</td>
<td class="LineOfCaller">174</td>
</tr>
<tr><td class="Exception" colspan="6">java.lang.RuntimeException: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.internal.RetryUtils$RetryPolicy.withRetry(RetryUtils.java:195)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.internal.RetryUtils.withRetry(RetryUtils.java:229)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.zhipu.ZhipuAiEmbeddingModel.lambda$embedAll$2(ZhipuAiEmbeddingModel.java:77)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.util.Collections$2.tryAdvance(Collections.java:4853)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.util.Collections$2.forEachRemaining(Collections.java:4861)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.zhipu.ZhipuAiEmbeddingModel.embedAll(ZhipuAiEmbeddingModel.java:78)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.embedding.EmbeddingModel.embed(EmbeddingModel.java:34)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.embedding.EmbeddingModel.embed(EmbeddingModel.java:24)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.modules.airag.llm.controller.AiragModelController.test(AiragModelController.java:171)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.lang.reflect.Method.invoke(Method.java:569)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.common.aspect.DictAspect.doAround(DictAspect.java:64)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at jdk.internal.reflect.GeneratedMethodAccessor210.invoke(Unknown Source)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.lang.reflect.Method.invoke(Method.java:569)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:642)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:632)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:71)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:173)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:728)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.modules.airag.llm.controller.AiragModelController$$SpringCGLIB$$0.test(&lt;generated&gt;)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.lang.reflect.Method.invoke(Method.java:569)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:258)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:191)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:547)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.websockets.jsr.JsrWebSocketFilter.doFilter(JsrWebSocketFilter.java:172)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.resource.ResourceUrlEncodingFilter.doFilter(ResourceUrlEncodingFilter.java:66)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.support.jakarta.WebStatFilter.doFilter(WebStatFilter.java:113)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.actuate.web.exchanges.servlet.HttpExchangesFilter.doFilterInternal(HttpExchangesFilter.java:89)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:65)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:109)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:138)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:70)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:109)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:138)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:70)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:463)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.lambda$doFilterInternal$0(AbstractShiroFilter.java:378)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:91)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:84)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:389)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:376)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:114)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:276)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:256)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.handleRequest(ServletInitialHandler.java:176)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.modules.monitor.actuator.undertow.CustomUndertowMetricsHandler.lambda$4(CustomUndertowMetricsHandler.java:87)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.Connectors.executeRootHandler(Connectors.java:395)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:861)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.lang.Thread.run(Thread.java:840)
<br />Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds for length 1
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.zhipu.AuthorizationInterceptor.generateToken(AuthorizationInterceptor.java:71)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.zhipu.AuthorizationInterceptor.intercept(AuthorizationInterceptor.java:59)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:100)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:197)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at okhttp3.internal.connection.RealCall.execute(RealCall.kt:148)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at retrofit2.OkHttpCall.execute(OkHttpCall.java:204)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.zhipu.ZhipuAiClient.embedAll(ZhipuAiClient.java:92)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.zhipu.ZhipuAiEmbeddingModel.lambda$embedAll$1(ZhipuAiEmbeddingModel.java:77)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.internal.RetryUtils$RetryPolicy.withRetry(RetryUtils.java:192)
<br />&nbsp;&nbsp;&nbsp;&nbsp;	... 136 common frames omitted
</td></tr>
<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:10,025</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,646</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/getDictItems/onl_cgform_head,table_txt,table_name,is_db_synch=&#39;Y&#39;%20and%20(table_type%20=%201%20or%20table_type%20=%202)%20order%20by%20create_time%20desc</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,646</td>
<td class="Message"> pathVariable: onl_cgform_head,table_txt,table_name,is_db_synch=&#39;Y&#39;%20and%20(table_type%20=%201%20or%20table_type%20=%202)%20order%20by%20create_time%20desc</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">44</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,647</td>
<td class="Message"> pathVariable decode: onl_cgform_head,table_txt,table_name,is_db_synch=&#39;Y&#39; and (table_type = 1 or table_type = 2) order by create_time desc</td>
<td class="MethodOfCaller">getAllParams</td>
<td class="FileOfCaller">HttpUtils.java</td>
<td class="LineOfCaller">56</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,647</td>
<td class="Message">Param paramsJsonStr : {&quot;x-path-variable&quot;:&quot;onl_cgform_head,table_txt,table_name,is_db_synch=&#39;Y&#39; and (table_type = 1 or table_type = 2) order by create_time desc&quot;}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,647</td>
<td class="Message">Param Sign : A787A31B7493650F65BDDE75D3FB8FC0</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,647</td>
<td class="Message"> dictCode : onl_cgform_head,table_txt,table_name,is_db_synch=&#39;Y&#39; and (table_type = 1 or table_type = 2) order by create_time desc</td>
<td class="MethodOfCaller">getDictItems</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">185</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,648</td>
<td class="Message">字典拼接的查询SQL：select table_txt,table_name from onl_cgform_head</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,649</td>
<td class="Message">获取select sql信息 ：{onl_cgform_head=SelectSqlInfo{fromTableName=&#39;onl_cgform_head&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[table_txt, table_name], realSelectFields=[table_txt, table_name], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,653</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,653</td>
<td class="Message">checkWhiteList tableName: onl_cgform_head</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,654</td>
<td class="Message">白名单校验：查询表&quot;onl_cgform_head&quot;，查询字段 [table_txt, table_name] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:14,654</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;onl_cgform_head&#39;, alias=&#39;&#39;, fields=[table_txt, table_name], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:33,216</td>
<td class="Message"> path = /online/cgreport/api/getColumnsAndData/1260179852088135681</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:33,217</td>
<td class="Message">获取的菜单地址= [/online/cgreport/api/getColumnsAndData/1260179852088135681]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:33,257</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;sys_user&#39;, fields=[birthday, phone, sex, id, avatar, email, realname, username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:33,263</td>
<td class="Message">报表查询sql=&gt;
select * from (select id,realname,username,sex,birthday,avatar,phone,email from sys_user) jeecg_rp_temp </td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">202</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:33,264</td>
<td class="Message">报表查询sqlParam=&gt;
{}</td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">203</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:33,450</td>
<td class="Message"> path = /online/cgreport/api/getColumnsAndData/1260179852088135681</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:33,451</td>
<td class="Message">获取的菜单地址= [/online/cgreport/api/getColumnsAndData/1260179852088135681]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:33,478</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;sys_user&#39;, fields=[birthday, phone, sex, id, avatar, email, realname, username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:33,498</td>
<td class="Message">报表查询sql=&gt;
select * from (select id,realname,username,sex,birthday,avatar,phone,email from sys_user) jeecg_rp_temp </td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">202</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:33,498</td>
<td class="Message">报表查询sqlParam=&gt;
{}</td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">203</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:41,458</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:46,475</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:56,859</td>
<td class="Message">字典拼接的查询SQL：select rule_code from sys_check_rule</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:56,861</td>
<td class="Message">获取select sql信息 ：{sys_check_rule=SelectSqlInfo{fromTableName=&#39;sys_check_rule&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[rule_code], realSelectFields=[rule_code], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:56,867</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:56,867</td>
<td class="Message">checkWhiteList tableName: sys_check_rule</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:56,882</td>
<td class="Message">新增表单白名单项: 表名：sys_check_rule，配置 &gt; SysTableWhiteList(id=1956013931357155330, tableName=sys_check_rule, fieldName=rule_code, status=1, createBy=admin, createTime=Thu Aug 14 23:23:56 CST 2025, updateBy=null, updateTime=null)</td>
<td class="MethodOfCaller">autoAdd</td>
<td class="FileOfCaller">SysTableWhiteListServiceImpl.java</td>
<td class="LineOfCaller">130</td>
</tr>

<tr class="warn even">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 23:23:56,883</td>
<td class="Message">表&quot;sys_check_rule&quot;未通过校验，且当前为 dev 模式，已自动向数据库中增加白名单数据。查询字段：rule_code</td>
<td class="MethodOfCaller">autoAddWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">209</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:23:56,883</td>
<td class="Message">白名单校验：查询表&quot;sys_check_rule&quot;，查询字段 [rule_code] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:24:18,261</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:24:26,153</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:24:26,153</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:24:26,163</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:24:37,326</td>
<td class="Message"> path = /online/cgform/api/getTreeData/997ee931515a4620bc30a9c1246429a9</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:24:37,327</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getTreeData/997ee931515a4620bc30a9c1246429a9]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:14,390</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:14,391</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:14,400</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:26,756</td>
<td class="Message"> path = /online/cgform/api/getData/05a3a30dada7411c9109306aa4117068</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:26,757</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/05a3a30dada7411c9109306aa4117068]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:26,762</td>
<td class="Message"> path = /online/cgform/api/getData/05a3a30dada7411c9109306aa4117068</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:26,763</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/05a3a30dada7411c9109306aa4117068]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:26,865</td>
<td class="Message"> path = /online/cgform/api/getData/05a3a30dada7411c9109306aa4117068</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:26,866</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/05a3a30dada7411c9109306aa4117068]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:33,741</td>
<td class="Message"> path = /online/cgreport/api/getColumnsAndData/1260179852088135681</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:33,742</td>
<td class="Message">获取的菜单地址= [/online/cgreport/api/getColumnsAndData/1260179852088135681]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:33,761</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;sys_user&#39;, fields=[birthday, phone, sex, id, avatar, email, realname, username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:33,769</td>
<td class="Message">报表查询sql=&gt;
select * from (select id,realname,username,sex,birthday,avatar,phone,email from sys_user) jeecg_rp_temp </td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">202</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:33,769</td>
<td class="Message">报表查询sqlParam=&gt;
{}</td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">203</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:37,401</td>
<td class="Message"> path = /online/cgform/api/getData/05a3a30dada7411c9109306aa4117068</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:37,401</td>
<td class="Message"> path = /online/cgform/api/getData/05a3a30dada7411c9109306aa4117068</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:37,402</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/05a3a30dada7411c9109306aa4117068]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:37,402</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/05a3a30dada7411c9109306aa4117068]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:39,023</td>
<td class="Message"> path = /online/cgform/api/getData/05a3a30dada7411c9109306aa4117068</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:39,024</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/05a3a30dada7411c9109306aa4117068]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:39,108</td>
<td class="Message"> path = /online/cgform/api/getData/05a3a30dada7411c9109306aa4117068</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:39,108</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/05a3a30dada7411c9109306aa4117068]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:41,650</td>
<td class="Message"> path = /online/cgform/api/getData/05a3a30dada7411c9109306aa4117068</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:41,651</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/05a3a30dada7411c9109306aa4117068]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:42,133</td>
<td class="Message"> path = /online/cgform/api/getData/05a3a30dada7411c9109306aa4117068</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:25:42,134</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/05a3a30dada7411c9109306aa4117068]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:26:09,876</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:26:09,877</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:26:09,908</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:27:19,816</td>
<td class="Message">online生成表设计开始:1755185239816</td>
<td class="MethodOfCaller">a</td>
<td class="FileOfCaller">OnlCgformApiController.java</td>
<td class="LineOfCaller">168</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:27:19,979</td>
<td class="Message">[LLMHandler] send message to AI server. message: {messages=[SystemMessage { text = &quot;严格按照参考json数组的格式输出，不要有其他任何描述，应以[开头，以]结尾
根据我的业务需求帮我生成一个业务表单，表单参考JSON如下：[&quot;student&quot;,&quot;学生表&quot;,[[&quot;name&quot;,&quot;姓名&quot;,&quot;String&quot;,50,0,&quot;text&quot;]]]
在该JSON数组中：
- 下标0为表单的英文code，使用下划线命名法
- 下标1为中文名称
- 下标2为字段数组
    - 下标0为字段的英文code，使用下划线命名法
    - 下标1为中文名称
    - 下标2为字段类型，限定为：String、Datetime、BigDecimal、Date、Text、int、Double
    - 下标3为字段长度
    - 下标4为控件类型，限定为：text、textarea、password、date、datetime、time、file、image
特别注意：
- 禁止生成主键或 ID 字段。
- 禁止生成中文标点和引号。
- 至少生成一个字段。&quot; }, UserMessage { name = null contents = [TextContent { text = &quot;业务需求如下:生产计划表&quot; }] }]}</td>
<td class="MethodOfCaller">completions</td>
<td class="FileOfCaller">LLMHandler.java</td>
<td class="LineOfCaller">117</td>
</tr>

<tr class="error odd">
<td class="Level">ERROR</td>
<td class="Date">2025-08-14 23:27:20,337</td>
<td class="Message">dev.ai4j.openai4j.OpenAiHttpException: {&quot;error&quot;:{&quot;message&quot;:&quot;Authentication Fails, Your api key: ?? is invalid&quot;,&quot;type&quot;:&quot;authentication_error&quot;,&quot;param&quot;:null,&quot;code&quot;:&quot;invalid_request_error&quot;}}</td>
<td class="MethodOfCaller">genSingleSchema4Modules</td>
<td class="FileOfCaller">OnlineCgformAiServiceImpl.java</td>
<td class="LineOfCaller">238</td>
</tr>
<tr><td class="Exception" colspan="6">java.lang.RuntimeException: dev.ai4j.openai4j.OpenAiHttpException: {&quot;error&quot;:{&quot;message&quot;:&quot;Authentication Fails, Your api key: ?? is invalid&quot;,&quot;type&quot;:&quot;authentication_error&quot;,&quot;param&quot;:null,&quot;code&quot;:&quot;invalid_request_error&quot;}}
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.internal.RetryUtils$RetryPolicy.withRetry(RetryUtils.java:195)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.internal.RetryUtils.withRetry(RetryUtils.java:229)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.openai.OpenAiChatModel.generate(OpenAiChatModel.java:250)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.openai.OpenAiChatModel.generate(OpenAiChatModel.java:174)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.ai.handler.LLMHandler.completions(LLMHandler.java:118)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.chatgpt.service.impl.ChatGptService.multiCompletions(ChatGptService.java:65)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.modules.online.cgform.service.impl.h.a(OnlineCgformAiServiceImpl.java:701)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.modules.online.cgform.service.impl.h.genSingleSchema4Modules(OnlineCgformAiServiceImpl.java:214)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.modules.online.cgform.c.a.a(OnlCgformApiController.java:169)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.lang.reflect.Method.invoke(Method.java:569)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:359)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:196)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:89)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.common.aspect.DictAspect.doAround(DictAspect.java:64)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at jdk.internal.reflect.GeneratedMethodAccessor210.invoke(Unknown Source)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.lang.reflect.Method.invoke(Method.java:569)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:642)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:632)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:71)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:173)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:97)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:184)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:728)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.modules.online.cgform.c.a$$SpringCGLIB$$0.a(&lt;generated&gt;)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.lang.reflect.Method.invoke(Method.java:569)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:258)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:191)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:986)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:891)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:547)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:614)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:74)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.websockets.jsr.JsrWebSocketFilter.doFilter(JsrWebSocketFilter.java:172)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.servlet.resource.ResourceUrlEncodingFilter.doFilter(ResourceUrlEncodingFilter.java:66)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at com.alibaba.druid.support.jakarta.WebStatFilter.doFilter(WebStatFilter.java:113)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.boot.actuate.web.exchanges.servlet.HttpExchangesFilter.doFilterInternal(HttpExchangesFilter.java:89)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:65)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:109)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:138)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:70)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.executeChain(AdviceFilter.java:109)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AdviceFilter.doFilterInternal(AdviceFilter.java:138)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.ProxiedFilterChain.doFilter(ProxiedFilterChain.java:70)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:463)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.lambda$doFilterInternal$0(AbstractShiroFilter.java:378)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:91)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:84)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:389)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:376)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:156)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:114)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:67)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletChain$1.handleRequest(ServletChain.java:68)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.RedirectDirHandler.handleRequest(RedirectDirHandler.java:68)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:117)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.SendErrorPageHandler.handleRequest(SendErrorPageHandler.java:52)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:276)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:132)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:256)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.servlet.handlers.ServletInitialHandler.handleRequest(ServletInitialHandler.java:176)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jeecg.modules.monitor.actuator.undertow.CustomUndertowMetricsHandler.lambda$4(CustomUndertowMetricsHandler.java:87)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.Connectors.executeRootHandler(Connectors.java:395)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:861)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at org.xnio.XnioWorker$WorkerThreadFactory$1$1.run(XnioWorker.java:1282)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at java.base/java.lang.Thread.run(Thread.java:840)
<br />Caused by: dev.ai4j.openai4j.OpenAiHttpException: {&quot;error&quot;:{&quot;message&quot;:&quot;Authentication Fails, Your api key: ?? is invalid&quot;,&quot;type&quot;:&quot;authentication_error&quot;,&quot;param&quot;:null,&quot;code&quot;:&quot;invalid_request_error&quot;}}
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.ai4j.openai4j.Utils.toException(Utils.java:8)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.ai4j.openai4j.SyncRequestExecutor.execute(SyncRequestExecutor.java:28)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.ai4j.openai4j.RequestExecutor.execute(RequestExecutor.java:59)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.model.openai.OpenAiChatModel.lambda$generate$1(OpenAiChatModel.java:250)
<br />&nbsp;&nbsp;&nbsp;&nbsp;at dev.langchain4j.internal.RetryUtils$RetryPolicy.withRetry(RetryUtils.java:192)
<br />&nbsp;&nbsp;&nbsp;&nbsp;	... 129 common frames omitted
</td></tr>
<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:27:20,339</td>
<td class="Message">online生成表设计结束,耗时523</td>
<td class="MethodOfCaller">a</td>
<td class="FileOfCaller">OnlCgformApiController.java</td>
<td class="LineOfCaller">170</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:27:32,314</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:28:30,830</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:28:31,545</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:28:31,865</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:28:32,567</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:28:32,569</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:28:32,615</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:30:22,372</td>
<td class="Message">======获取全部菜单数据=====耗时:63毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:32:21,862</td>
<td class="Message">======获取全部菜单数据=====耗时:49毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:32:31,057</td>
<td class="Message">======获取全部菜单数据=====耗时:14毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:34:02,006</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/getDictItems/rule_conditions</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:34:02,008</td>
<td class="Message">Param paramsJsonStr : {}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:34:02,009</td>
<td class="Message">Param Sign : E19D6243CB1945AB4F7202A1B00F77D5</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:34:02,009</td>
<td class="Message"> dictCode : rule_conditions</td>
<td class="MethodOfCaller">getDictItems</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">185</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:35:38,204</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/getDictItems/rule_conditions</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:35:38,205</td>
<td class="Message">Param paramsJsonStr : {}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:35:38,206</td>
<td class="Message">Param Sign : E19D6243CB1945AB4F7202A1B00F77D5</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:35:38,206</td>
<td class="Message"> dictCode : rule_conditions</td>
<td class="MethodOfCaller">getDictItems</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">185</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:06,603</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:06,635</td>
<td class="Message">字典拼接的查询SQL：select realname,username from sys_user</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:06,636</td>
<td class="Message">获取select sql信息 ：{sys_user=SelectSqlInfo{fromTableName=&#39;sys_user&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[realname, username], realSelectFields=[realname, username], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:06,639</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_check_rule=rule_code, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:06,639</td>
<td class="Message">checkWhiteList tableName: sys_user</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:06,639</td>
<td class="Message">白名单校验：查询表&quot;sys_user&quot;，查询字段 [realname, username] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:06,639</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_user&#39;, alias=&#39;&#39;, fields=[realname, username], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:07,945</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:07,945</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:07,955</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:09,039</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:09,867</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:10,641</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:31,165</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:31,166</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:31,206</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:37:56,027</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:05,862</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:05,877</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:05,911</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:08,252</td>
<td class="Message"> connect databaseName : jeecg-boot</td>
<td class="MethodOfCaller">readAllTableNames</td>
<td class="FileOfCaller">DbReadTableUtil.java</td>
<td class="LineOfCaller">67</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:35,753</td>
<td class="Message">Sign Interceptor request URI = /jeecg-boot/sys/dict/getDictItems/sex</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">SignAuthInterceptor.java</td>
<td class="LineOfCaller">36</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:35,754</td>
<td class="Message">Param paramsJsonStr : {}</td>
<td class="MethodOfCaller">getParamsSign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">50</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:35,754</td>
<td class="Message">Param Sign : E19D6243CB1945AB4F7202A1B00F77D5</td>
<td class="MethodOfCaller">verifySign</td>
<td class="FileOfCaller">SignUtil.java</td>
<td class="LineOfCaller">37</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:35,755</td>
<td class="Message"> dictCode : sex</td>
<td class="MethodOfCaller">getDictItems</td>
<td class="FileOfCaller">SysDictController.java</td>
<td class="LineOfCaller">185</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:35,857</td>
<td class="Message"> path = /online/cgform/api/getData/56870166aba54ebfacb20ba6c770bd73</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:35,858</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/56870166aba54ebfacb20ba6c770bd73]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:35,914</td>
<td class="Message"> path = /online/cgform/api/getData/56870166aba54ebfacb20ba6c770bd73</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:35,915</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/56870166aba54ebfacb20ba6c770bd73]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:36,015</td>
<td class="Message"> path = /online/cgform/api/getData/56870166aba54ebfacb20ba6c770bd73</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:36,015</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/56870166aba54ebfacb20ba6c770bd73]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:36,204</td>
<td class="Message"> path = /online/cgform/api/getData/deea5a8ec619460c9245ba85dbc59e80</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:36,204</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/deea5a8ec619460c9245ba85dbc59e80]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:36,208</td>
<td class="Message"> path = /online/cgform/api/getData/41de7884bf9a42b7a2c5918f9f765dff</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:36,209</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/41de7884bf9a42b7a2c5918f9f765dff]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:36,330</td>
<td class="Message"> path = /online/cgform/api/getData/deea5a8ec619460c9245ba85dbc59e80</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:36,330</td>
<td class="Message"> path = /online/cgform/api/getData/41de7884bf9a42b7a2c5918f9f765dff</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:36,330</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/deea5a8ec619460c9245ba85dbc59e80]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:38:36,330</td>
<td class="Message">获取的菜单地址= [/online/cgform/api/getData/41de7884bf9a42b7a2c5918f9f765dff]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:12,598</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:20,707</td>
<td class="Message"> path = /online/cgreport/api/getColumnsAndData/1705487386450534402</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:20,708</td>
<td class="Message">获取的菜单地址= [/online/cgreport/api/getColumnsAndData/1705487386450534402]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:20,724</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_log&#39;, alias=&#39;sys_log&#39;, fields=[], all=true}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:20,732</td>
<td class="Message">报表查询sql=&gt;
select * from (select * from sys_log) jeecg_rp_temp </td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">202</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:20,732</td>
<td class="Message">报表查询sqlParam=&gt;
{}</td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">203</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:20,862</td>
<td class="Message"> path = /online/cgreport/api/getColumnsAndData/1705487386450534402</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:20,863</td>
<td class="Message">获取的菜单地址= [/online/cgreport/api/getColumnsAndData/1705487386450534402]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:20,879</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_log&#39;, alias=&#39;sys_log&#39;, fields=[], all=true}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:20,947</td>
<td class="Message">报表查询sql=&gt;
select * from (select * from sys_log) jeecg_rp_temp </td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">202</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:20,947</td>
<td class="Message">报表查询sqlParam=&gt;
{}</td>
<td class="MethodOfCaller">executeSelectSql</td>
<td class="FileOfCaller">OnlCgreportHeadServiceImpl.java</td>
<td class="LineOfCaller">203</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:32,951</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:41,025</td>
<td class="Message">字典拼接的查询SQL：select code from onl_cgreport_head</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:41,026</td>
<td class="Message">获取select sql信息 ：{onl_cgreport_head=SelectSqlInfo{fromTableName=&#39;onl_cgreport_head&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[code], realSelectFields=[code], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:41,029</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_check_rule=rule_code, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:41,030</td>
<td class="Message">checkWhiteList tableName: onl_cgreport_head</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:39:41,030</td>
<td class="Message">白名单校验：查询表&quot;onl_cgreport_head&quot;，查询字段 [code] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:40:51,382</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:40:51,473</td>
<td class="Message">-----查询近两个月收到的未读通知-----，近2月的第一天：2025-07-01 00:00:00</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">388</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:40:51,482</td>
<td class="Message">begin 获取用户近2个月的系统公告 (通知)9毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">403</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:40:51,491</td>
<td class="Message">end 获取用户2个月的系统公告 (系统消息)18毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">411</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:41:12,381</td>
<td class="Message">======获取全部菜单数据=====耗时:15毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:41:13,463</td>
<td class="Message">======获取全部菜单数据=====耗时:9毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:41:31,813</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:42:06,648</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:42:06,650</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:42:06,685</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="warn odd">
<td class="Level">WARN</td>
<td class="Date">2025-08-14 23:42:25,104</td>
<td class="Message">Reached the maximum number of URI tags for &#39;http.server.requests&#39;.</td>
<td class="MethodOfCaller">accept</td>
<td class="FileOfCaller">OnlyOnceLoggingDenyMeterFilter.java</td>
<td class="LineOfCaller">53</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:15,941</td>
<td class="Message">字典拼接的查询SQL：select table_name from onl_cgform_head</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:15,945</td>
<td class="Message">获取select sql信息 ：{onl_cgform_head=SelectSqlInfo{fromTableName=&#39;onl_cgform_head&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[table_name], realSelectFields=[table_name], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:15,950</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_check_rule=rule_code, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:15,950</td>
<td class="Message">checkWhiteList tableName: onl_cgform_head</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:15,951</td>
<td class="Message">白名单校验：查询表&quot;onl_cgform_head&quot;，查询字段 [table_name] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:22,427</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:22,455</td>
<td class="Message">字典拼接的查询SQL：select name,id from sys_position</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:22,456</td>
<td class="Message">获取select sql信息 ：{sys_position=SelectSqlInfo{fromTableName=&#39;sys_position&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[name, id], realSelectFields=[name, id], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:22,466</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_check_rule=rule_code, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:22,467</td>
<td class="Message">checkWhiteList tableName: sys_position</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:22,477</td>
<td class="Message">白名单校验：查询表&quot;sys_position&quot;，查询字段 [name, id] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:43:22,477</td>
<td class="Message">  获取sql信息 ：[QueryTable{name=&#39;sys_position&#39;, alias=&#39;&#39;, fields=[name, id], all=false}] </td>
<td class="MethodOfCaller">isPass</td>
<td class="FileOfCaller">AbstractQueryBlackListHandler.java</td>
<td class="LineOfCaller">66</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:44:32,058</td>
<td class="Message">单字段排序规则&gt;&gt; column:orderNum,排序方式:asc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:44:32,081</td>
<td class="Message">单字段排序规则&gt;&gt; column:orderNum,排序方式:asc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:45:22,956</td>
<td class="Message">======获取全部菜单数据=====耗时:13毫秒</td>
<td class="MethodOfCaller">list</td>
<td class="FileOfCaller">SysPermissionController.java</td>
<td class="LineOfCaller">114</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:45:23,851</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:45:27,593</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:46:05,960</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:46:18,713</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:46:20,086</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:46:36,699</td>
<td class="Message"> 获取登录人 LoginUser id: e9ca23d68d884d4ebb19d07889727dae</td>
<td class="MethodOfCaller">querySysMessageList</td>
<td class="FileOfCaller">SysAnnouncementServiceImpl.java</td>
<td class="LineOfCaller">208</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:46:36,714</td>
<td class="Message">耗时：15 毫秒</td>
<td class="MethodOfCaller">vue3List</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">652</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:46:37,727</td>
<td class="Message">-----查询近两个月收到的未读通知-----，近2月的第一天：2025-07-01 00:00:00</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">388</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:46:37,737</td>
<td class="Message">begin 获取用户近2个月的系统公告 (通知)11毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">403</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:46:37,745</td>
<td class="Message">end 获取用户2个月的系统公告 (系统消息)19毫秒</td>
<td class="MethodOfCaller">listByUser</td>
<td class="FileOfCaller">SysAnnouncementController.java</td>
<td class="LineOfCaller">411</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:46:49,827</td>
<td class="Message">-------通过数据库读取用户拥有的角色Rules------username： admin,Roles size: 2</td>
<td class="MethodOfCaller">getUserRoleSet</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1125</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:47:01,392</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:47:01,392</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:47:01,407</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:52:09,321</td>
<td class="Message"> connect databaseName : jeecg-boot</td>
<td class="MethodOfCaller">readAllTableNames</td>
<td class="FileOfCaller">DbReadTableUtil.java</td>
<td class="LineOfCaller">67</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:52:21,832</td>
<td class="Message">[IP] [online数据库导入表]   --表名：mall_product_inventory</td>
<td class="MethodOfCaller">d</td>
<td class="FileOfCaller">OnlCgformHeadController.java</td>
<td class="LineOfCaller">610</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:52:21,849</td>
<td class="Message"> connect databaseName : jeecg-boot</td>
<td class="MethodOfCaller">readOriginalTableColumn</td>
<td class="FileOfCaller">DbReadTableUtil.java</td>
<td class="LineOfCaller">436</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:52:22,074</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:52:22,075</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:52:22,088</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:53:15,520</td>
<td class="Message"> connect databaseName : jeecg-boot</td>
<td class="MethodOfCaller">readAllTableNames</td>
<td class="FileOfCaller">DbReadTableUtil.java</td>
<td class="LineOfCaller">67</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:53:24,723</td>
<td class="Message">[IP] [online数据库导入表]   --表名：mall_product_inventory</td>
<td class="MethodOfCaller">d</td>
<td class="FileOfCaller">OnlCgformHeadController.java</td>
<td class="LineOfCaller">610</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:53:24,733</td>
<td class="Message"> connect databaseName : jeecg-boot</td>
<td class="MethodOfCaller">readOriginalTableColumn</td>
<td class="FileOfCaller">DbReadTableUtil.java</td>
<td class="LineOfCaller">436</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:53:24,969</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:53:24,969</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:53:24,980</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:14,171</td>
<td class="Message">字典拼接的查询SQL：select table_name from onl_cgform_head</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:14,173</td>
<td class="Message">获取select sql信息 ：{onl_cgform_head=SelectSqlInfo{fromTableName=&#39;onl_cgform_head&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[table_name], realSelectFields=[table_name], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:14,176</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_check_rule=rule_code, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:14,176</td>
<td class="Message">checkWhiteList tableName: onl_cgform_head</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:14,176</td>
<td class="Message">白名单校验：查询表&quot;onl_cgform_head&quot;，查询字段 [table_name] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:29,843</td>
<td class="Message">字典拼接的查询SQL：select table_name from onl_cgform_head</td>
<td class="MethodOfCaller">isPassByDict</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">127</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:29,845</td>
<td class="Message">获取select sql信息 ：{onl_cgform_head=SelectSqlInfo{fromTableName=&#39;onl_cgform_head&#39;, fromSubSelect=null, aliasName=&#39;null&#39;, selectFields=[table_name], realSelectFields=[table_name], selectAll=false}} </td>
<td class="MethodOfCaller">isPassBySql</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">76</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:29,848</td>
<td class="Message">表字典白名单初始化完成：{sys_permission=id,name, sys_position=name,id, onl_drag_comp=id,comp_name, test_shoptype_tree=type_name,id, sys_dict=dict_code, airag_flow=name,id, oa_officialdoc_organcode=id,organ_name, demo=id,name, tj_user_report=name,username, sys_role=role_name,role_code, design_form=id,desform_name,desform_code, ces_shop_type=name,pid,id,has_child, sys_check_rule=rule_code, sys_depart=id,org_code,depart_name, sys_user=phone,work_no,id,email,realname,username, onl_cgreport_head=code, sys_data_source=code,name, wu_liao=wul_name,id, sys_sms_template=template_code, sys_category=id,name, onl_cgform_head=table_txt,table_name, oa_wps_file=id,name, sys_tenant=name,id, airag_model=name,id}</td>
<td class="MethodOfCaller">init</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">59</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:29,849</td>
<td class="Message">checkWhiteList tableName: onl_cgform_head</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">156</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:29,849</td>
<td class="Message">白名单校验：查询表&quot;onl_cgform_head&quot;，查询字段 [table_name] 通过校验</td>
<td class="MethodOfCaller">checkWhiteList</td>
<td class="FileOfCaller">DictTableWhiteListHandlerImpl.java</td>
<td class="LineOfCaller">195</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:30,218</td>
<td class="Message">低代码模式，拦截请求路径：/jeecg-boot/online/cgform/api/editAll</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">LowCodeModeInterceptor.java</td>
<td class="LineOfCaller">58</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:30,503</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:30,504</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:30,512</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:41,333</td>
<td class="Message">低代码模式，拦截请求路径：/jeecg-boot/online/cgform/api/doDbSynch/402881f098a948420198a94937f60001/normal</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">LowCodeModeInterceptor.java</td>
<td class="LineOfCaller">58</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:41,469</td>
<td class="Message"> path = /online/cgform/head/list</td>
<td class="MethodOfCaller">getOnlinePossiblePaths</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">1805</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:41,469</td>
<td class="Message">获取的菜单地址= [/online/cgform/head/list]</td>
<td class="MethodOfCaller">queryPermissionDataRule</td>
<td class="FileOfCaller">SysBaseApiImpl.java</td>
<td class="LineOfCaller">201</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:54:41,477</td>
<td class="Message">单字段排序规则&gt;&gt; column:createTime,排序方式:desc</td>
<td class="MethodOfCaller">doMultiFieldsOrder</td>
<td class="FileOfCaller">QueryGenerator.java</td>
<td class="LineOfCaller">263</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:55:28,229</td>
<td class="Message">低代码模式，拦截请求路径：/jeecg-boot/online/cgform/head/enhanceJs/402881f098a948420198a94937f60001</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">LowCodeModeInterceptor.java</td>
<td class="LineOfCaller">58</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:55:45,043</td>
<td class="Message">低代码模式，拦截请求路径：/jeecg-boot/online/cgform/head/enhanceJs/402881f098a948420198a94937f60001</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">LowCodeModeInterceptor.java</td>
<td class="LineOfCaller">58</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:56:49,635</td>
<td class="Message">低代码模式，拦截请求路径：/jeecg-boot/online/cgform/head/enhanceJava/402881f098a948420198a94937f60001</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">LowCodeModeInterceptor.java</td>
<td class="LineOfCaller">58</td>
</tr>

<tr class="info even">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:56:49,672</td>
<td class="Message">低代码模式，拦截请求路径：/jeecg-boot/online/cgform/head/enhanceJava/402881f098a948420198a94937f60001</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">LowCodeModeInterceptor.java</td>
<td class="LineOfCaller">58</td>
</tr>

<tr class="info odd">
<td class="Level">INFO</td>
<td class="Date">2025-08-14 23:57:04,806</td>
<td class="Message">低代码模式，拦截请求路径：/jeecg-boot/online/cgform/head/enhanceJava/402881f098a948420198a94937f60001</td>
<td class="MethodOfCaller">preHandle</td>
<td class="FileOfCaller">LowCodeModeInterceptor.java</td>
<td class="LineOfCaller">58</td>
</tr>
</table>
</body></html>